Имя: Пароль:
1C
1С v8
Где ошибка
0 alex-van1C8
 
15.02.12
12:23
ЭтикеткиБланк=Новый COMОбъект("Excel.Application");
   ЭтикеткиБланк.Workbooks.Open("C:\...\Этикетки.xlsm");
   Колонка=1;
   Строка=1;
   Для каждого .....Цикл
       ...
   КонецЦикла;
   ЭтикеткиБланк.Run("PrintBook");
В Excel все нормально (печатает книгу, и закрывает ее без изменений),
а затем 1С выдает: Произошла исключительная ситуация (0x800a9c68)
Ошибка при вызове метода контекста (Run)
1 Wobland
 
15.02.12
12:28
а рун делаешь только ради печати?
2 Nexux
 
15.02.12
12:29
может ЭтикеткиБланк.PrintOut() ?
3 alex-van1C8
 
15.02.12
12:30
Ну да, мне там еще подсчитать количество листов нужно, как в 1с это сделать не знаю а в EXCEL знаю :), вот и решил это дело с EXCEL творить
4 alex-van1C8
 
15.02.12
12:31
А может как то проигнорить эту ошибку
5 depthzer0
 
15.02.12
12:31
"В Excel все нормально (печатает книгу, и закрывает ее без изменений)" - скрипт на басике?
6 alex-van1C8
 
15.02.12
12:31
токо как
7 alex-van1C8
 
15.02.12
12:31
Да на басике
8 alex-van1C8
 
15.02.12
12:32
Sub PrintBook()
i = 1
If [A73] <> "" Then i = 2
If [A143] <> "" Then i = 3
If [A213] <> "" Then i = 4
If [A283] <> "" Then i = 5
If [A353] <> "" Then i = 6
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=i, Copies:=1
ThisWorkbook.Close (0)
End Sub
9 depthzer0
 
15.02.12
12:33
Может лучше это повторить в 1С?
10 alex-van1C8
 
15.02.12
12:33
А может 1С ругается из за того, что EXCEL и связь обрывается
11 alex-van1C8
 
15.02.12
12:34
А может 1С ругается из за того, что EXCEL закрывает книгу и связь обрывается
12 alex-van1C8
 
15.02.12
12:34
"Может лучше это повторить в 1С?"- не знаю как
13 depthzer0
 
15.02.12
12:34
попробуй в скрипте убрать клозе
14 alex-van1C8
 
15.02.12
12:35
и в 1с закрыть?
15 depthzer0
 
15.02.12
12:36
да просто попробуй, будет ругаться или нет
16 alex-van1C8
 
15.02.12
12:39
ЭтикеткиБланк=Новый COMОбъект("Excel.Application");
   ЭтикеткиБланк.Workbooks.Open("C:\...\Этикетки.xlsm");
   Колонка=1;
   Строка=1;
   Для каждого .....Цикл
       ...
   КонецЦикла;
   ЭтикеткиБланк.Run("PrintBook");
   ЭтикеткиБланк.Close(0);

Ругается:
Метод объекта не обнаружен (Close)
   ЭтикеткиБланк.Close(0);
17 depthzer0
 
15.02.12
12:42
ЭтикеткиБланк.Workbooks.Close(0); ?
18 alex-van1C8
 
15.02.12
12:52
ЭтикеткиБланк.Workbooks.Close(0); ?-Неверное число параметров
19 alex-van1C8
 
15.02.12
12:56
ЭтикеткиБланк.Close(0);-Метод объекта не обнаружен (Close)
20 depthzer0
 
15.02.12
12:58
ЭтикеткиБланк.Workbooks.Close(); ?
21 alex-van1C8
 
15.02.12
13:01
ЭтикеткиБланк.Workbooks.Close(); ?-Метод объекта не обнаружен (Close)
22 depthzer0
 
15.02.12
13:02
ЭтикеткиБланк.Workbook.Close();  ?
23 Wobland
 
15.02.12
13:02
quit()
24 depthzer0
 
15.02.12
13:03
25 lion11
 
15.02.12
13:03
Еще вариант:
ЭтикеткиБланк = Неопределено;
26 alex-van1C8
 
15.02.12
13:09
quit() -закрывает, но предварительно спрашивает "сохранить изменения или нет?", а мне нужно что бы "молча" закрыл без изменений quit(0) не срабатывает-Неверное число параметров
27 depthzer0
 
15.02.12
13:11
v8: Как закрыть книгу Excel, открытую через COM-соединение?
28 Wobland
 
15.02.12
13:11
(26) displayalerts
29 depthzer0
 
15.02.12
13:11
30 alex-van1C8
 
15.02.12
13:18
ЭтикеткиБланк.Run("PrintBook");
   ЭтикеткиБланк.Application.DisplayAlerts = Ложь;
   ЭтикеткиБланк.quit();
Все ОК.
depthzer0 болшьое спасибо!
31 Wobland
 
15.02.12
13:20
(30) а я не считаюсь, да?
32 alex-van1C8
 
15.02.12
13:25
Wobland, извини за невнимательность. Конечно считаешься :).
33 alex-van1C8
 
15.02.12
13:25
Дубыль 2
34 alex-van1C8
 
15.02.12
13:25
ЭтикеткиБланк.Run("PrintBook");
   ЭтикеткиБланк.Application.DisplayAlerts = Ложь;
   ЭтикеткиБланк.quit();
Все ОК.

Wobland,depthzer0 большое спасибо!
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс