fpspreadsheet копирование листов в Excel

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

fpspreadsheet копирование листов в Excel

Сообщение Толик » 28.01.2015 00:32:39

Доброго времени суток, всем форумчанам. Поделитесь пожалуйста опытом в решение следующей задачи. Необходимо из шаблона отчета получать конечный отчет для этого используется Excel (так как шаблон пользователь может поправить без особых навыков). Но встал вопрос о размножении листов и вот тут что то затык :( . Использую fpspreadsheet. И хочется именно копировать исходный лист из файла шаблона. Поскольку в нем и форматирование и объединение и прочее прочее прочее. Но в упор не вижу способов сделать этого :( . Пытался отыскать подобные ситуации и на форуме и в интернете, но что то мои попытки не увенчались успехом. Буду признателен за совет, или хотя бы за идею...
Толик
незнакомец
 
Сообщения: 7
Зарегистрирован: 17.07.2007 09:48:51

Re: fpspreadsheet копирование листов в Excel

Сообщение Sharfik » 28.01.2015 01:25:13

У COM интерфейса есть метод
Код: Выделить всё
Application.ThisWorkbook.Sheets.Copy

Если он в твоем компоненте реализован как то похоже, то найдешь. И еще, судя по описанию в http://wiki.freepascal.org/FPSpreadsheet/ru поддержки *.xlsx у него нет. А новые версии excel будут предоставлять новые функции для шаблонов и отчетов, которые не думаю что упакуются в старый формат файла.
Аватара пользователя
Sharfik
энтузиаст
 
Сообщения: 809
Зарегистрирован: 20.07.2013 01:04:30

Re: fpspreadsheet копирование листов в Excel

Сообщение Толик » 28.01.2015 10:00:35

Sharfik к сожалению нет методов, позволяющих копировать лист целиком, ну или я их не вижу.
Толик
незнакомец
 
Сообщения: 7
Зарегистрирован: 17.07.2007 09:48:51

Re: fpspreadsheet копирование листов в Excel

Сообщение pupsik » 28.01.2015 11:32:25

Толик а вы понимаете что такое fpspreadsheet и о чем вам говорил Sharfik?
Откуда, в упрощенном виде, обыкновенной парсилке будет копи-паст?
Т.е., если предположить, можно попробывать организовать считывание необходимого листа и создание нового схожего. Но копи-пасте нет...
pupsik
энтузиаст
 
Сообщения: 1154
Зарегистрирован: 20.08.2014 16:20:13

Re: fpspreadsheet копирование листов в Excel

Сообщение Sharfik » 28.01.2015 13:24:14

Если узко Windows + MS Office, то можно обойтись и COM связью было бы, без сторонних компонентов. Обязательное наличие MS Office конечно, но зато все функции поддерживаться будут.
...Попробуй сделать сам Copy, судя по примеру, там в модуле этом есть возможность добавлять листы, считывать параметры дополнительные и т.п. Циклом пройдись по параметрам и будет счастье.
Аватара пользователя
Sharfik
энтузиаст
 
Сообщения: 809
Зарегистрирован: 20.07.2013 01:04:30

Re: fpspreadsheet копирование листов в Excel

Сообщение Толик » 28.01.2015 13:34:37

Sharfik писал(а):Если узко Windows + MS Office, то можно обойтись и COM связью было бы, без сторонних компонентов. Обязательное наличие MS Office конечно, но зато все функции поддерживаться будут.
...Попробуй сделать сам Copy, судя по примеру, там в модуле этом есть возможность добавлять листы, считывать параметры дополнительные и т.п. Циклом пройдись по параметрам и будет счастье.

да, такое решение первое в голову и пришло. Но мысль закралась - это же объект, почему нельзя создать копию объекта и его использовать как новый лист. Насчет COM - именно отсутствие Windows и сподвигло на использование сторонних разработок.
Толик
незнакомец
 
Сообщения: 7
Зарегистрирован: 17.07.2007 09:48:51

Re: fpspreadsheet копирование листов в Excel

Сообщение pupsik » 28.01.2015 17:36:15

Assign() - пальцем в небо :)
pupsik
энтузиаст
 
Сообщения: 1154
Зарегистрирован: 20.08.2014 16:20:13

Re: fpspreadsheet копирование листов в Excel

Сообщение sign » 29.01.2015 06:55:27

Толик писал(а):Доброго времени суток, всем форумчанам. Поделитесь пожалуйста опытом в решение следующей задачи. Необходимо из шаблона отчета получать конечный отчет для этого используется Excel (так как шаблон пользователь может поправить без особых навыков). Но встал вопрос о размножении листов и вот тут что то затык :( . Использую fpspreadsheet. И хочется именно копировать исходный лист из файла шаблона. Поскольку в нем и форматирование и объединение и прочее прочее прочее. Но в упор не вижу способов сделать этого :( . Пытался отыскать подобные ситуации и на форуме и в интернете, но что то мои попытки не увенчались успехом. Буду признателен за совет, или хотя бы за идею...

Попробуйте uOpenOffice.
Там можно всё. Ну, или почти всё.
Меня этот модуль ни разу не подвёл.
sign
энтузиаст
 
Сообщения: 1131
Зарегистрирован: 30.08.2009 09:20:53


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 226

Рейтинг@Mail.ru
cron