Показать сообщение отдельно
  #4  
Старый 01.03.2013, 16:48
Budjaka Budjaka вне форума
Прохожий
 
Регистрация: 13.02.2013
Сообщения: 15
Репутация: 10
По умолчанию

Цитата:
Сообщение от Sultik.rinat
Это куда-то залезать надо, чтобы имя это поменять? А куда?

И ещё вопрос: а почему я открываю только для чтения, а при закрытии у меня всегда вылетает окно с вопросом "Сохранить изменения?"
1. У тебя поле / имя листа / или любой другой идентификатор в книге - совпали с именем функции (итп) самого офиса. Отсюда невозможность открыть. Нужно выяснить что именно мешает работать. И в выдающейся ошибке думаю есть подсказка.
2. У тебя код :
Excel := CreateOleObject('Excel.Application');
Excel.WorkBooks.Open('S:\Абоненты.xlsx',ReadOnly:= True);
Excel.Close (или что то в этом духе);
Выполнив его единожды - и поймав ошибку на 2й строке - ты открыл книгу экселя, и твой код прервался. Т.е. excel.close - не судьба была. И неважно закрыл ли ты Делфи или нет - эта книга висит у тебя в памяти, и поэтому
Цитата:
я открываю только для чтения, а при закрытии у меня всегда вылетает окно с вопросом "Сохранить изменения?
Нажми Ctrl + Alt + Del - и взгляни сам : у тебя в процессах висит твой запущенный Exсel. Или два. Или десять :-) (смотря сколько раз пытался).
Убей их всех
1.1. P.s. а проблема твоя довольно распространена, в связи с глюками Екселя. Сам искал одно время. Вот вам копипаста, чтобы по ссылкам не ходить :
Цитата:
1. Сохранить книгу в старый формат, затем обратно в новый. Штатным диспетчером имен (Формулы - Диспетчер имен - Фильтр - Имена с ошибками) не лечится.
2. Используем надстройку Namemanager (еще под 97й офис) oaltd.co.uk/mvp
Ответить с цитированием