Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.27;
Скачать: CL | DM;

Вниз

Помогите пожалуйста с Excel, - <invalid variant operation>   Найти похожие ветки 

 
Konstantin   (2004-06-10 10:47) [0]

Проблема следующая:
var
MyExcel : Variant;
...
{читаю Excel файл и формирую XML файл.
...

// Вот дальше и вылетает, не может закрыть если он (MyExcel) не
// Unassigned, пишет на любую из этих строк
// <invalid variant operation>

if MyExcel<>Unassigned then
                       begin
              MyExcel:=Unassigned; // пробовал и вместе и по
              MyExcel.Workbooks.Close; // отдельности, ничего
              MyExcel.Quit; // не помогает!
                       end;

Дело еще в том, что сначала все работало как часы и закрывался эксэль как надо, и даже из процессов уходил (частая проблема). Но после добавления блочков с OpenDialog и SaveDialog появился вот такой глюк. И что еще более интересно, что после восстановления старого варианта (без блоков) ГЛЮК ОСТАЛСЯ! Вот и сижу уже 3-й день с такой проблемой. Помогите пожалуйста! Всем заранее огромное спасибо!


 
Clickmaker ©   (2004-06-10 10:48) [1]

MyExcel.Quit;
MyExcel:=Unassigned;
именно в такой последовательности


 
Konstantin   (2004-06-10 10:52) [2]

Попробовал, не помогает! Таже глюка. :(


 
Clickmaker ©   (2004-06-10 10:55) [3]

if not ((VarType(MyExcel) = varEmpty) or (VarType(MyExcel) = varNull))
then begin
 MyExcel.Quit;
 MyExcel:=Unassigned;
end;


 
Konstantin   (2004-06-10 10:58) [4]

Идиотизм, но ПОМОГЛО следующее:

вместо:

if MyExcel<>Unassigned then
                      begin
             MyExcel.Quit;
             MyExcel:=Unassigned;                
                      end;

Просто:

MyExcel.Quit;
MyExcel:=Unassigned;                

Но теперь вопрос, а как если человек не запускал процедуру обработки и соответственно не открывал Excel?


 
Konstantin   (2004-06-10 11:01) [5]

То Clickmaker ©! Спасибо ! Ваш вариан работает!!! Даже если и не запускать Excel. Огромное спасибо!


 
Clickmaker ©   (2004-06-10 11:01) [6]


> Konstantin   (10.06.04 10:58) [4]

Из хелпа: Do not use Unassigned to test whether a Variant value is Unassigned. Instead, use the VarIsEmpty standard function. When used on an unassigned Variant, the VarType standard function returns varEmpty.

Проверяй, как я тебе написал в [3]



Страницы: 1 вся ветка

Текущий архив: 2004.06.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.044 c
9-1078425571
Creep
2004-03-04 21:39
2004.06.27
Уменя спрайты крутятся в таймере и на разных компах разная скорос


1-1087293114
Aleksej
2004-06-15 13:51
2004.06.27
Исключения в FormActivate, Create и т. д.


1-1086774425
guest
2004-06-09 13:47
2004.06.27
TAnimate


1-1086929618
Князев Сергей
2004-06-11 08:53
2004.06.27
Почему Delphi так корябает экзешники между сборками


1-1086876686
Asdor
2004-06-10 18:11
2004.06.27
Конструктор формы и Reintroduce