fpspreadsheet копирование листов в Excel
Модератор: Модераторы
fpspreadsheet копирование листов в Excel
Доброго времени суток, всем форумчанам. Поделитесь пожалуйста опытом в решение следующей задачи. Необходимо из шаблона отчета получать конечный отчет для этого используется Excel (так как шаблон пользователь может поправить без особых навыков). Но встал вопрос о размножении листов и вот тут что то затык
. Использую fpspreadsheet. И хочется именно копировать исходный лист из файла шаблона. Поскольку в нем и форматирование и объединение и прочее прочее прочее. Но в упор не вижу способов сделать этого
. Пытался отыскать подобные ситуации и на форуме и в интернете, но что то мои попытки не увенчались успехом. Буду признателен за совет, или хотя бы за идею...
У COM интерфейса есть метод
Если он в твоем компоненте реализован как то похоже, то найдешь. И еще, судя по описанию в http://wiki.freepascal.org/FPSpreadsheet/ru поддержки *.xlsx у него нет. А новые версии excel будут предоставлять новые функции для шаблонов и отчетов, которые не думаю что упакуются в старый формат файла.
Код: Выделить всё
Application.ThisWorkbook.Sheets.Copy
Если он в твоем компоненте реализован как то похоже, то найдешь. И еще, судя по описанию в http://wiki.freepascal.org/FPSpreadsheet/ru поддержки *.xlsx у него нет. А новые версии excel будут предоставлять новые функции для шаблонов и отчетов, которые не думаю что упакуются в старый формат файла.
Sharfik к сожалению нет методов, позволяющих копировать лист целиком, ну или я их не вижу.
Толик а вы понимаете что такое fpspreadsheet и о чем вам говорил Sharfik?
Откуда, в упрощенном виде, обыкновенной парсилке будет копи-паст?
Т.е., если предположить, можно попробывать организовать считывание необходимого листа и создание нового схожего. Но копи-пасте нет...
Откуда, в упрощенном виде, обыкновенной парсилке будет копи-паст?
Т.е., если предположить, можно попробывать организовать считывание необходимого листа и создание нового схожего. Но копи-пасте нет...
Если узко Windows + MS Office, то можно обойтись и COM связью было бы, без сторонних компонентов. Обязательное наличие MS Office конечно, но зато все функции поддерживаться будут.
...Попробуй сделать сам Copy, судя по примеру, там в модуле этом есть возможность добавлять листы, считывать параметры дополнительные и т.п. Циклом пройдись по параметрам и будет счастье.
...Попробуй сделать сам Copy, судя по примеру, там в модуле этом есть возможность добавлять листы, считывать параметры дополнительные и т.п. Циклом пройдись по параметрам и будет счастье.
Sharfik писал(а):Если узко Windows + MS Office, то можно обойтись и COM связью было бы, без сторонних компонентов. Обязательное наличие MS Office конечно, но зато все функции поддерживаться будут.
...Попробуй сделать сам Copy, судя по примеру, там в модуле этом есть возможность добавлять листы, считывать параметры дополнительные и т.п. Циклом пройдись по параметрам и будет счастье.
да, такое решение первое в голову и пришло. Но мысль закралась - это же объект, почему нельзя создать копию объекта и его использовать как новый лист. Насчет COM - именно отсутствие Windows и сподвигло на использование сторонних разработок.
Assign() - пальцем в небо 
Толик писал(а):Доброго времени суток, всем форумчанам. Поделитесь пожалуйста опытом в решение следующей задачи. Необходимо из шаблона отчета получать конечный отчет для этого используется Excel (так как шаблон пользователь может поправить без особых навыков). Но встал вопрос о размножении листов и вот тут что то затык. Использую fpspreadsheet. И хочется именно копировать исходный лист из файла шаблона. Поскольку в нем и форматирование и объединение и прочее прочее прочее. Но в упор не вижу способов сделать этого
. Пытался отыскать подобные ситуации и на форуме и в интернете, но что то мои попытки не увенчались успехом. Буду признателен за совет, или хотя бы за идею...
Попробуйте uOpenOffice.
Там можно всё. Ну, или почти всё.
Меня этот модуль ни разу не подвёл.
