![]() |
|
Модераторы: Snowy, MetalFan, bems, Poseidon |
![]()
|
|
| Avada |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 24.11.2010 Репутация: нет Всего: нет |
Всем привет.
В процессе работы моей программы мне нужно обработать некоторые данные, которые хранятся в xml файле и выводятся в stringgrid'ы, а затем сохранить в файле excel'я. Вроде бы задача простая, я подключил в юзес ComObj в своей процедуре прописал переменную xls1: variant, как описано в примере все сделал, но при запуске мне говорит external exception [какойто код]. Как сделать, чтобы все работало нормально? У меня делфи 7, иксель 2003 Заранее спасибо |
|||
|
||||
| cyberstream |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 138 Регистрация: 7.9.2006 Репутация: 1 Всего: 4 |
Как думаешь, если привести свой код, место и текст exception - это ощутимо поспособствует анализу ситуации?
--------------------
Не знаешь кого спросить? - Спроси google! |
|||
|
||||
| superVad |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 735 Регистрация: 6.4.2006 Где: Черкассы, Украина Репутация: 7 Всего: 15 |
Avada, в 17 строке ошибка.
|
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 11 Всего: 130 |
Этого явно недостаточно для вывода в .xls. -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| aleksh |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 609 Регистрация: 8.7.2008 Репутация: 1 Всего: 13 |
||||
|
||||
| Avada |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 24.11.2010 Репутация: нет Всего: нет |
И то правда, а я как всегда все обобщил и подумал, что
пример в данном случае лишний. Вобщем, я за это время успел еще порыться в компонентах делфи и нарыл ExcelApplication. В ниже процедуре пробую хотя бы создать рабочую книгу икселя:
После запуска программы при клике на метку процедура выкидывает ошибку про экстернал экзепшн. И чтобы не терять время зря: помогите мне правильно создать файл экселя, в который я мог бы заносить нужную информацию. |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 11 Всего: 130 |
Вначале надо добавляешь книгу, а затем уже сохраняешь файл.
Это сообщение отредактировал(а) Данкинг - 22.12.2010, 15:36 -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| Avada |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 24.11.2010 Репутация: нет Всего: нет |
если меня монитор и клавиатура не подводит, судя по всему я так и сделал. Зато при запущенном экселе мне говорит что файл, указанный в скобках, не найден. А предыдущая ошибка пропадает. А мне нужно сохранять информацию в созданный с нуля файл с уникальным именем. Используя TExcelApplication Это сообщение отредактировал(а) Avada - 22.12.2010, 17:53 |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 31 Всего: 484 |
Указывай полный путь к файлу.
|
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 11 Всего: 130 |
Найди различие:
А вообще лучше используй Ole, а не ExcelApplication.
Это сообщение отредактировал(а) Данкинг - 22.12.2010, 18:41 -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| superVad |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 735 Регистрация: 6.4.2006 Где: Черкассы, Украина Репутация: 7 Всего: 15 |
Может тут чего интересного нароешь: ссылка
|
|||
|
||||
| Avada |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 24.11.2010 Репутация: нет Всего: нет |
Snowy
А разве короткий путь к файлу не подразумевает сохранения в текущей директории? И если на то пошло, я и полный путь к файлу указывал, продолжает ругаться ошибками superVad Спасибо Это сообщение отредактировал(а) Avada - 23.12.2010, 01:41 |
|||
|
||||
| Avada |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 24.11.2010 Репутация: нет Всего: нет |
Вот только беда, работает только когда эксель запущен.
А я незнаю, как запустить эксель через делфи. |
|||
|
||||
| Данкинг |
|
||||||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 11 Всего: 130 |
Откуда Excel знает, какая директория текущая? Он сохраняет в своей директории по умолчанию - "Мои документы" или что там указано.
Не знаю, что там у кого запущено, но я же код написал. Он тоже ошибку выдаёт? Добавлено через 2 минуты и 42 секунды
Это сообщение отредактировал(а) Данкинг - 23.12.2010, 02:34 -------------------- There's nothing left but silent epitaphs. |
||||||
|
|||||||
| Avada |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 24.11.2010 Репутация: нет Всего: нет |
если честно, да. Ту самую, external exception Вот программа, думаю все правильно скопировал:
указание полного пути также ничего не меняет Это сообщение отредактировал(а) Avada - 23.12.2010, 03:32 |
||||
|
|||||
| cyberstream |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 138 Регистрация: 7.9.2006 Репутация: 1 Всего: 4 |
Код ошибок не выдаёт. Может у тебя шось с экселем, осью, … ?
Проверь на другом компе. --------------------
Не знаешь кого спросить? - Спроси google! |
|||
|
||||
| XAKEPEHOK |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 103 Регистрация: 18.10.2006 Где: Matrix Репутация: нет Всего: 0 |
А в csv выводить нельзя? Я не знаю конечно что тебе конкретно надо, но...
Создай в excel любую табличку, сохрани ее в csv, и открой в блокноте. Сам увидишь как легко писать такой формат. Форматирования никакого, но в некоторых случаях это использовать проще всего |
|||
|
||||
| de_Nis |
|
|||
![]() Старательный ![]() Профиль Группа: Участник Сообщений: 223 Регистрация: 19.10.2006 Где: Молдова Репутация: нет Всего: 6 |
Не знаю, из какой книги были взяты примеры. Может быть, поможет изучение книги (есть в Сети): Корняков Программирование документов и приложений MS Office в Delphi (496 с).pdf "...Книга посвящена созданию приложений в среде Delphi для работы с текстом, таблицами, объектами, диаграммами, макросами, настройками параметров страниц и др. в документах MS Word и Excel. Большое внимание уделено объектным моделям документов MS Office. Рассмотрено программирование элементов управления редакторов MS Word и Excel, а также создание динамических библиотек, которые можно использовать в макросах документов MS Office. Приведены варианты программной реализации типовых задач и ответы на типовые вопросы, с которыми встречаются разработчики...." Это сообщение отредактировал(а) de_Nis - 23.12.2010, 12:06 --------------------
Несчастлив не тот, у кого ничего нет, а тот, кто ничего не хочет… |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 11 Всего: 130 |
На какой строчке ошибка вылетает?
-------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| Avada |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 24.11.2010 Репутация: нет Всего: нет |
1. Зачем я делаю вывод в эксель.
Только потому, что сроки курсовой поджимают, а в экселе уже готовая система форматирования для печати. В том числе, в формате А3. 2. На какой строке вылетает ошибка. Вот:
Выделяется строка
Насчет проблем с осью, экселем не знаю, вроде все отлично работает |
||||
|
|||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 11 Всего: 130 |
И при чём здесь Excel? Создай новый проект и попробуй этот код заново туда вставить. -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| Avada |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 24.11.2010 Репутация: нет Всего: нет |
Товарищ, давайте по делу. Я ведь привел в одном из постов код программы,
если угодно, нового проекта, в котором написал то, что написали вы. Ничего своего не добавил. И вот этот самый код у меня выдает ошибку, external exception с какими-то цифрами и буквами. Оно не работает. Что это может быть? И еще, занесение данных в файл экселя подразумевает наличие его в запущенном виде? или оно само соединяется, складывает данные в файл и закрывает, при этом на экране ничего не появляется? Просто когда у меня эксель открытый, при работе с элементом ExcelApplication (аналогично вашему коду), выдает ошибку, что файла такого нет. В случае с вашим кодом даже запущенный эксель ничего не меняет. Вроде все изложил. Добавлено через 6 минут и 54 секунды Все, я разобрался, в чем дело! Дело в дебаггере. http://forum.sources.ru/index.php?showtopic=121279&hl= если просто сохранить проект, а не запускать через ф9, все будет работать. Всем спасибо, что пытались помочь |
|||
|
||||
| calandor |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 13.1.2011 Репутация: нет Всего: нет |
Вот народ. Половина тем на форуме из-за дебагера. Надо модераторам где-то в шапке вывесить объявление: не запускайте программы из среды, и проблем у вас будет меньше.
|
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 11 Всего: 130 |
calandor, это ты к чему? Т.е. при тестировании программы предлагаешь сначала компилировать, а затем запускать exe-файл? Так удобнее?
-------------------- There's nothing left but silent epitaphs. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |