Добрый день! Есть внешняя обработка, содержащая макет в виду Excel-файла.
Необходимо скопировать его листы в новый файл excel.
Код на сервере:
Попытка
Excel = New COMОбъект("Excel.Application");
Excel.Visible = 0;
Excel.AutomationSecurity = 3;
Excel.EnableEvents = 0;
Excel.FileValidation = 1;
Excel.FileValidationPivot = 2;
Книга = Excel.WorkBooks.Add();
Лист = Книга.WorkSheets(1);
Лист.Name = "test";
Исключение
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Ошибка создания com объекта Excell";
Сообщение.Сообщить();
Возврат;
КонецПопытки;
Попытка
объ = РеквизитФормыВЗначение("Объект");
Макет = объ.ПолучитьМакетExcell();
МакетОбразца = Макет.Получить();
ЗначениеВРеквизитФормы(объ, "Объект");
СтарыйЛист = МакетОбразца.WorkSheets(1);
Исключение
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Ошибка получения макета образца";
Сообщение.Сообщить();
Возврат;
КонецПопытки;
МакетОбразца.WorkSheets(1).Copy(Книга.WorkSheets(1));
Не срабатывает.
Подскажите, пожалуйста, как скопировать? COM-объекты определяются, они создаются. Лист книги я могу получить и старой, и новой.
БГУ 2.-.61.28, платформа 8.3.13.1690
(0) Зачем вам вообще читать и записывать Excel через com-объект? Все можно сделать с помощью методов Табличного документа. Читайте про методы Табличного документа "Прочитать()" "Записать()" и про "ПакетОтображаемыхДокументов" - для записи на нескольких листах
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс