Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Скопировать лист Excel из макета в новый файл

Скопировать лист Excel из макета в новый файл
Я
   Очень Любознательная
 
12.04.19 - 12:50
Добрый день! Есть внешняя обработка, содержащая макет в виду 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
 
 
   Vlad33k
 
1 - 12.04.19 - 13:26
(0) Зачем вам вообще читать и записывать Excel через com-объект? Все можно сделать с помощью методов Табличного документа. Читайте про методы Табличного документа "Прочитать()" "Записать()" и про "ПакетОтображаемыхДокументов" - для записи на нескольких листах

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.