|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
06.11.2015, 10:54 | #1 |
Пользователь
Регистрация: 12.11.2008
Сообщений: 55
|
Чтение Excel файлов в Lazarus
Должна же быть уже решена задача чтения Excel файлов в программе на Lazarus! Но пока найти готовое решение в сети не удалось. Такой код без проблем работает в Delphi, но выдаёт ошибку в Lazarus:
Код:
Последний раз редактировалось AndrzejX; 06.11.2015 в 11:26. |
06.11.2015, 11:04 | #2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,238
|
я не знаю, как решить вашу проблему.
Но стало любопытно. Подскажите, неужели вышеуказанный код ошибку выдаёт секретную? |
06.11.2015, 11:10 | #3 |
Пользователь
Регистрация: 12.11.2008
Сообщений: 55
|
Выполнение прерывается, выскакивает ассемблер с кодом, на строке
Excel.Application.WorkBooks.Add(Fil eName); Да, это в среде Lazarus. При непосредственном запуске программы вот что: ??? Add ??? WorkBooks ????? Последний раз редактировалось AndrzejX; 06.11.2015 в 11:19. |
06.11.2015, 11:22 | #4 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,238
|
чему равно FileName?
так, пальцем в небо. пробовали файл положить в корень диска и назвать без пробелов и только латинскими буквами? ну и так попробуйте изменить Код:
|
06.11.2015, 11:25 | #5 |
Пользователь
Регистрация: 12.11.2008
Сообщений: 55
|
Да! Файл назван TestBook1. Название листа тоже изменено на Sheet1. Лежит в папке Plan, находящейся непосредственно на диске C.
Изменение String на AnsiString ничего не дало. Читал уже про проблемы в кодировках. Сейчас ещё попробую WideString. Последний раз редактировалось AndrzejX; 06.11.2015 в 11:28. |
06.11.2015, 11:29 | #6 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,238
|
ясно.
А замена на AnsiString что-то дала? |
06.11.2015, 11:30 | #7 |
Пользователь
Регистрация: 12.11.2008
Сообщений: 55
|
Нет, замена на AnsiString дела не меняет. WideString вызывает сообщение
Invalid Variant type cast |
06.11.2015, 11:34 | #8 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,238
|
плохо. я не знаю, что тут можно сделать.
(p.s. поиск выдал такое - http://wiki.freepascal.org/FPSpreadsheet/ если кончатся идеи, то, м.б. попробовать?...) |
06.11.2015, 11:38 | #9 |
Пользователь
Регистрация: 12.11.2008
Сообщений: 55
|
Ну это да, читал уже и про такую библиотеку. Есть ещё такая альтернатива как CodeTyphon. Там, как читал, таких проблем вроде нет. Но ещё не пробовал. Просто не верилось, что такая распространённая проблема не имеет решения непосредственно в Lazarus. А оно вон как... Спасибо за уделённое мне время!
Кстати, думал исхитриться, и создать в Delphi dll, в которую и запихнуть процедуру чтения файла. Но уже этот вариант не работает даже в Delphi. Хотя тут я мог чего-то и неправильно состряпать. Но замена процесса чтения на просто Sum:=X+Y; работает через эту же dll Последний раз редактировалось AndrzejX; 06.11.2015 в 11:46. |
06.11.2015, 11:43 | #10 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,238
|
ещё раз хочу обратить ваше внимание на то, что я вообще не спец в FPC/Lazarus! Возможно, что Вы слишком торопитесь, а специалисты просто ещё не заглядывали в эту тему. Тут на форуме Виталий aka Stilet вроде бы работает с Lazarus. Может быть, ему есть что сказать по теме.
|
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Lazarus в Linux - Поиск файлов в папке | BLACK_RAIN | Lazarus, Free Pascal, CodeTyphon | 4 | 08.10.2014 11:23 |
Обработка файлов(lazarus). | Chelovekpredel | Lazarus, Free Pascal, CodeTyphon | 2 | 23.09.2012 12:14 |
Чтение и запись больших excel файлов на c# | Bi0max | C# (си шарп) | 0 | 21.08.2012 20:33 |
Lazarus подключение .so, .dll файлов | Diez_ | Lazarus, Free Pascal, CodeTyphon | 19 | 07.07.2011 21:23 |
Открытие html-файлов в Lazarus | student2008 | Lazarus, Free Pascal, CodeTyphon | 2 | 25.12.2010 11:07 |