|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Проблема при открытии книги Excell
Раньше код работал исправно:
Код:
Excel := CreateOleObject('Excel.Application'); Excel.WorkBooks.Open('S:\Абоненты.xlsx',ReadOnly:=True); Как её исправить? Последний раз редактировалось Sultik.rinat, 01.03.2013 в 09:11. |
#2
|
|||
|
|||
Телепатирую - удалите 2007 офис поставленный только что, и верните 2003, т.к. кривое имя листа / поля / записи внутри книги, совпадает с зарезервированным именем в новом 2007 или выше. Делфи тут ни при чем.
Вариантов исправить - куча. Самый просто - сохрани электронную таблицу, не как книгу 07, а как 2003 (XLS). Если решение не нравится, можем более извращенное придумать :-) Последний раз редактировалось Budjaka, 01.03.2013 в 11:27. |
#3
|
|||
|
|||
Цитата:
Так а почему раньше-то работал нормально, офис тот же стоял всегда. Это куда-то залезать надо, чтобы имя это поменять? А куда? И ещё вопрос: а почему я открываю только для чтения, а при закрытии у меня всегда вылетает окно с вопросом "Сохранить изменения?" Последний раз редактировалось Sultik.rinat, 01.03.2013 в 12:19. |
#4
|
|||
|
|||
Цитата:
2. У тебя код : Excel := CreateOleObject('Excel.Application'); Excel.WorkBooks.Open('S:\Абоненты.xlsx',ReadOnly:= True); Excel.Close (или что то в этом духе); Выполнив его единожды - и поймав ошибку на 2й строке - ты открыл книгу экселя, и твой код прервался. Т.е. excel.close - не судьба была. И неважно закрыл ли ты Делфи или нет - эта книга висит у тебя в памяти, и поэтому Цитата:
Убей их всех 1.1. P.s. а проблема твоя довольно распространена, в связи с глюками Екселя. Сам искал одно время. Вот вам копипаста, чтобы по ссылкам не ходить : Цитата:
Последний раз редактировалось Budjaka, 01.03.2013 в 16:58. |
#5
|
|||
|
|||
Цитата:
Цитата:
Цитата:
|