×
×
+ Ответить в теме
Показано с 1 по 2 из 2
  1. #1
    Клерк Аватар для KyMaPuK
    Регистрация
    07.11.2008
    Адрес
    Питер
    Сообщений
    12

    Осторожно Новый лист в Excel

    ДОброе время суток

    У меня такая проблема:

    выгружаю данные из 1С 8.1 в Excel,
    но результат выгрузки нужно записать в 3 различных листа одной книги.

    Как создать, добавить новые листы?

    вот наброски из кода:

    Попытка

    // Создать объект.
    Excel = Новый COMОбъект("Excel.Application");

    Исключение
    Сообщить("Не удалось инициализировать Excel");

    Возврат;

    КонецПопытки;

    Попытка

    // Если при отработке следующего фрагмента кода произойдет ошибка, объект "Excel.Application" будет закрыт.



    НомерКниги = Excel.Workbooks.Count;
    Книга = Excel.Workbooks.Item(НомерКниги);
    Лист = Excel.ActiveSheet;

    // Создать новую книгу (в нее будем записывать данные).
    Excel.Application.Workbooks.Add(1);

    НомерКниги = Excel.Workbooks.Count;
    КнигаНовая = Excel.Workbooks.Item(НомерКниги);
    ЛистНовый = Excel.ActiveSheet;

    //Что-то вроде этого, тока оно не работает(((
    // ЛистНовый1 = Ecxel.AddSheet(2);



    // Установить ширину колонки в новой книге.
    ЛистНовый.Columns("B").ColumnWidth = 40;


    ЛистНовый.Cells(1, 1).Value = "Наименование контрагента";

    // Считаем, что в нашем случае необходимо сформировать только две строки табличной части.
    Для НомерСтроки = 1 По 2 Цикл
    Лист.Range("Строка").Copy(ЛистНовый.Range(ЛистНовый.Cells(3 + НомерСтроки,1), ЛистНовый.Cells(3 + НомерСтроки, 5)));

    // Записать значение в ячейку листа новой таблицы
    // в реальном примере данные будут браться из информационной базы
    ЛистНовый.Cells(3 + НомерСтроки, 1).Value = НомерСтроки;
    ЛистНовый.Cells(3 + НомерСтроки, 2).Value = "Наименование номенклатурной позиции " + Строка(НомерСтроки);
    ЛистНовый.Cells(3 + НомерСтроки, 3).Value = НомерСтроки;
    ЛистНовый.Cells(3 + НомерСтроки, 4).Value = НомерСтроки;
    ЛистНовый.Cells(3 + НомерСтроки, 5).Value = НомерСтроки;
    КонецЦикла;

    Excel.Visible = Истина;

    Исключение
    Сообщить(ОписаниеОшибки());
    Excel.Quit();
    КонецПопытки;



    заранее спасибо
    Поделиться с друзьями

  2. #2
    Клерк-клерик Аватар для Octopus
    Регистрация
    04.12.2008
    Адрес
    Пермь
    Сообщений
    2,187
    Если не ошибаюсь, то команда
    Excel.Application.Workbooks.Add(1);
    добавляет лист с именем "1" и делает его текущим.

+ Ответить в теме

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы можете создавать новые темы
  • Вы можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •