![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 21.09.2012
Сообщений: 20
|
![]()
Доброго времени суток!
На форме есть TImage с изображением. Пытаюсь вставить в Excel: копирую изображение из TImage в буфер обмена. Затем вставляю в Excel с помощью команды PasteSpecial. В итоге на PasteSpecial все время возникает исключение EOleException с текстом: Метод PasteSpecial из класса Worksheet завершен неверно. Код:
Версия FPC: 3.0.4 Я думаю, что все дело в том, что неправильно передаются параметры в PasteSpecial. Если у кого-нибудь есть рабочий вариант, поделитесь пожалуйста. Заранее благодарен. |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 09.12.2020
Сообщений: 30
|
![]()
hron66, Почитай про библиотеку FpSpreadsheet. Она заточена как раз для взаимодействия с Excel.
Лично я выгрузку Image в Excel не делал, но всякое чтение/запись подкрашивание ячеек и прочее форматирование текста как-то надобилось. Думаю, закинуть тебе в нужную ячейку изображение тоже не составит труда. И Lazarus лучше обнови. 1.6.4 старый и много моментов в нем не совсем хорошо работает по сравнению с 2.0.10. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 21.09.2012
Сообщений: 20
|
![]()
Спасибо, библиотеку FpSpreadsheet поизучаю.
Обновил Lazarus до версии 2.0.10. В нем вообще не работает мой код. На строке xla.Workbooks.Add пишет method not automation object. Хотя тоже самое в 1.6.4 прекрасно работает. |
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 09.12.2020
Сообщений: 30
|
![]()
hron66, Cкидываю тебе рабочий вариант. Проверил на Excel 2010. Но, чтобы все работало нормально, тебе нужно:
1. установить в свой проект последнюю версию 1.12 Fpspreadsheet. Я скачивал тут. Можешь иную ссыль найти. https://sourceforge.net/projects/laz...2.zip/download 2. Как я устанавливал. Распаковываешь fpspreadsheet-1.12 в директорию установленного Lazarus. По умолчанию. C:\lazarus\components\fpspreadsheet . Далее в запущенном своем проекте жмешь Пакет -> Открыть файл пакета (.lpk) ... выбираешь из C:\lazarus\components\fpspreadsheet поочередно файлы laz_fpspreadsheet.lpk laz_fpspreadsheet_visual.lpk и компелируешь добавляя в свой проект. Ну а далее модуль проекту будет известен. код на всякий случай: Код:
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 09.12.2020
Сообщений: 30
|
![]()
IvaNoff2020, Да, чуть не забыл, не знаю в курсе ты или нет, но при запуске твоей программы, файл "name1.xlsx" (в данном примере. у тебя будет какой-то свой) должен быть закрыт. Иначе доступа на чтение/запись excel не будет и вылетит ошибка.
|
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Выгрузка из MySQL в Excel (некорректный файл Excel) | Maxx | PHP | 4 | 16.09.2015 00:07 |
Выгрузка из DBGrid в excel | Tanzor69 | БД в Delphi | 4 | 19.04.2013 15:39 |
Тормозит выгрузка в Excel | Object_File | ASP.NET | 0 | 26.02.2013 13:54 |
Выгрузка в Excel | city32 | Общие вопросы Delphi | 2 | 18.10.2012 15:58 |
Выгрузка из БД в Excel | fenetka | Microsoft Office Excel | 6 | 20.10.2011 09:06 |