Вывод в Excel через COM

28.03.10

Интеграция - Загрузка и выгрузка в Excel

Была задача, создать через Excel файл, через COM, оформленный «красиво».

Выкладываю примеры кода.

Начнем с простого - создадим СОM-Объект.
Пример функции создания:

// функция устанавливает связь с EXCEL
Функция EXCELСоздатьCOMОбъект() Экспорт

   
Excel = Неопределено;

   
# Если клиент тогда
       
Состояние("Идет установка связи с в Excel ");
   
# КонецЕсли

   
Попытка
       
Excel = Новый COMОбъект("Excel.Application");
    Исключение
       
# Если клиент тогда
           
Сообщить("Ошибка создания обьекта Microsoft Excel" + ОписаниеОшибки(), СтатусСообщения.Внимание);
       
# КонецЕсли
   
КонецПопытки;

    Возврат
Excel;
КонецФункции
//EXCELСоздатьCOMОбъект

Теперь создаем или открываем файл.

ФайлExcel = Excel.Documents.Open("С:\MyExcelFile.xls").

Пример функции создания файла из шаблона.

Функция EXCELОткрытьШаблон(Excel, ИмяФайла) Экспорт

   
ФайлExcel = Неопределено;

    # Если клиент тогда
      
Состояние("Идет открытие файла " + ИмяФайла + " , ждите....." );
   
# КонецЕсли

   
Попытка
       
ФайлEXCEL = Excel.WorkBooks.Add(ИмяФайла);
    Исключение
       
# Если клиент тогда
           
Сообщить("Ошибка создания обьекта Microsoft Excel" + ОписаниеОшибки(), СтатусСообщения.Внимание);
       
# КонецЕсли
   
КонецПопытки;


    Возврат
ФайлExcel;

КонецФункции //EXCELОткрытьШаблон

Получим лист файла Excel

ЛистДанных = ФайлEXCEL.Worksheets(1);
ЛистСодержание = ФайлEXCEL.Worksheets(2);
ЛистДанных.Name = Формат(ТекущаяДата(),"ДФ='dd.MM.yyyy ЧЧ мм'"); //Задаем имя листу

Теперь перейдем к работе с ячейками и диапазоном ячеек.

Ячейка = Cells(НомерСтроки, НомерКолонки) // Получим ячейку
ДиапазонЯчеек = ЛистДанных.Range(ЛистДанных.Cells.Item(НомерСтроки, НомерКолонки), ЛистДанных.Cells.Item(НомерСтроки +1 , НомерКолонки +1) //Получим диапазон ячеек
Ячейка.Value = «Задаем значение в ячейке» // Задаем значение в ячейке

Форматирование ячеек или диапазона ячеек.
Лучше форматировать диапазон ячеек, будет быстрее. Чтобы получить нужный результат создаешь макрос, форматируешь ячейку, смотришь код в макроса.
Значение констант например xlTop, xlToRight из EXCEL. В EXCEL есть VBA - alt+F11 и в нем Object Browser - F2 и в нем поиск.

Ячейка.Font.Size = 12;// Устанавливаем размер шрифта
Ячейка.Font.Name = "Century Gothic"; //Устанавливаем шрифт
Ячейка.Font.ColorIndex = 5;// Устанавливаем цвет
Ячейка.Font.Bold = Истина; // Устанавливаем жирный шрифт
Ячейка.Borders(5).LineStyle = -4142; // Очищаем все границы
Ячейка.Borders(1).LineStyle = 1; // Устанавливаем левую границу
Ячейка.Borders(8).LineStyle = 1; // Устанавливаем верхнюю границу
Ячейка.Borders(9).LineStyle = 1; // Устанавливаем нижнюю границу
Ячейка.Borders(10).LineStyle = 1; // Устанавливаем правую границу
Ячейка.Interior.Color = RGB(51, 153, 102); //цвет фона
Ячейка.HorizontalAlignment = -4131; //Горизонтальное выравнивание текста 4131 -лево 4108 центр -4152 право
Ячейка.VerticalAlignment = -4107; //Вертикальное выравнивание текста
Ячейка.IndentLevel = 6; //Отступ
Ячейка.Merge(Истина); //Объединение ячеек

Создание ссылки 

Лист.Hyperlinks.Add(ДиапазонЯчеек, "", «ИмяОбласти», Гиперссылка, Гиперссылка); // ссылка на именованную область
ЛистExcel.Hyperlinks.add(ЛистExcel.cells(1,1),"","Лист3!A1","","моя ссылка") // ссылка на ячейку
Ячейка.Hyperlinks.Add(Ячейка, //infostart.ru,"" , "infostart.ru " , "infostart.ru "); // ссылка в интернет

См. также

Загрузка номенклатуры из Excel в УТ11, КА 2, ERP 2, Розница 2. Дополнительные реквизиты и сведения, характеристики, картинки, цены, остатки

Загрузка и выгрузка в Excel Розничная торговля Логистика, склад и ТМЦ Ценообразование, анализ цен Прайсы Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Розница 2 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Загрузка из файлов xls, xlsx, ods, csv, mxl в УТ11, КА 2, ERP 2, Розница 2. Задействованы все возможности конфигурации - заполнение реквизитов номенклатуры, дополнительных реквизитов и сведений, характеристики, доп.реквизиты и сведения характеристик. Дополнительные обработки для расширения возможностей.

10560 руб.

29.10.2014    211121    630    526    

446

Загрузка номенклатуры c картинками (несколько потоков одновременно) и сопутствующими данными в базу и любые документы из yml, xls, xlsx, xlsm, ods, ots, csv для УТ 10.3, УТ 11 (все), БП 3, КА 2, ERP 2, УНФ 1.6/3.0, Розница 2

Загрузка и выгрузка в Excel Логистика, склад и ТМЦ Ценообразование, анализ цен Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Платные (руб)

Эволюция не стоит на месте - новая удобная версия функциональной обработки для Вашего бизнеса! Что же Вы получаете? Удобный и интуитивно понятный интерфейс с 3-мя этапами работы. 2 режима - автоматический и ручной. Чтение XLSX, XLSM, CSV, XML/YML форматов без офиса, на любом сервере! Визуальное связывание колонок файла и реквизитов простым перетаскиванием колонок. Создание или обновление номенклатуры с иерархией, характеристик, доп. реквизитов, упаковок, загрузка практически неограниченного количества картинок на одну номенклатуру (с возможностью загрузки в несколько потоков одновременно), с хранением в томах или в базе. Загрузка номенклатуры поставщиков или поиск по их данным номенклатуры. Загрузка доп. реквизитов в характеристики. Загрузка штрихкодов с генерацией новых. Создание элементов справочников и ПВХ "на лету" для выбранных реквизитов. (Обновление от 09.04.2024, версия 9.9 - 9.10)

14400 руб.

20.11.2015    151371    367    376    

502

Маркетплейсный загрузчик для 12-ти маркетплейсов в 1С:БП 3, УТ 11, КА 2, ERP, УНФ

Загрузка и выгрузка в Excel Маркетплейсы Платформа 1С v8.3 Бухгалтерский учет 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Бухгалтерский учет Управленческий учет Платные (руб)

Реальный помощник, с помощью которого Вы сделаете необходимые документы для Wildberries, OZON, ЯндексМаркет, Мегамаркет, Aliexpress, "Детский мир", Казань-Экспресс, "Леруа Мерлен", ЭНФАНТА (Акушерство), ЛаМода, Летуаль, "Твой дом" в документы "Отчет комиссионера (агента) о продажах" и другие, может работать в "Бухгалтерия 3", "Бухгалтерия 3 КОРП", УТ 11, УНФ, КА 2, ERP. Возможность подключить любые маркетплейсы. Анализ продаж ОЗОН. 30 дней БЕСПЛАТНОГО пользования!

1800 руб.

12.08.2021    32290    240    64    

122

SALE! 30%

Распознавание и загрузка сканов в 1С "одним нажатием": УПД, ТОРГ-12, накладные, счета, номенклатура, заказы и т.д.

Загрузка и выгрузка в Excel Документооборот и делопроизводство (СЭД) Учет документов Распознавание документов и образов Управляемые формы 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Бухгалтерский учет Управленческий учет Платные (руб)

Универсальная программа для распознавания ЛЮБЫХ СКАНОВ ИЛИ ФОТО ТОВАРНЫХ ДОКУМЕНТОВ в 1С. Не требует указания параметров и предварительной настройки. Просто выбираете файл (PDF, JPG, DOC, XLS, HTML и т.д.) выбираете документ 1С и нажимаете кнопку "Распознать и загрузить".

6000 5520 руб.

04.06.2019    101816    298    173    

314

Загрузка данных отчета о реализации товаров из Excel файла СберМегаМаркет

Загрузка и выгрузка в Excel Маркетплейсы Платформа 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 Бухгалтерский учет Управленческий учет Платные (руб)

Загрузка данных отчета о реализации товаров из сервиса СберМегаМаркет для конфигурации: Бухгалтерия предприятия, редакция 3.0; Управление торговлей, редакция 11 и Управление нашей фирмой, редакция 3.0 в документ "Отчет комиссионера (агента) о продажах".

4800 руб.

07.06.2022    15370    82    0    

63

SALE! 20%

Загрузка документов и номенклатуры из Excel в 1С "одним нажатием": УПД, ТОРГ-12, отчеты маркетплейсов, заказы, счета, прайсы

Загрузка и выгрузка в Excel Оптовая торговля Платформа 1С v8.3 Управляемые формы Платформа 1C v8.2 Конфигурации 1cv8 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Бухгалтерский учет Управленческий учет Платные (руб)

Универсальная обработка для загрузки документов из Excel в 1С. Не требует указания параметров (номера колонок, номер первой строки таблицы и т.д.) и предварительной настройки. Просто выбираете файл Excel, документ 1С и нажимаете кнопку "Загрузить". Обработка сама находит таблицу в файле Excel, необходимые для загрузки данные в ней (номенклатура, количество, НДС, цена, сумма) и загружает ее в 1С. Вместе с номенклатурой может найти контрагента, номер и дату документа, штрих-коды, серии ГТД, страну и т.д. Распознает документы ЛЮБОЙ ФОРМЫ (УПД, ТОРГ-12, заказ, отчет комиссионера и т.д.). Не требует MS Office. Для поиска таблиц используются методы эвристического поиска. Загружает только то, что нужно, т.е. пропускает повторы шапки таблицы, заголовки, промежуточные итоги, подписи и т.д. Содержит модуль работы с электронной почтой и api-загрузчик отчетов о продажах маркетплейсов.

5000 4000 руб.

09.11.2016    215821    928    886    

942
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. eeeio 123 04.11.10 10:30 Сейчас в теме
спасибо. скопировал - и думать не пришлось! плюс.
+
2. Bober777 26 08.01.12 15:19 Сейчас в теме
Красота это хорошо а можно пример получить с группировками?
+
3. MrVesna 20 19.03.12 17:56 Сейчас в теме
Обязательно надо скопировать. Лучше будет для начинающих если еще приведешь примеры с рисунками, хотя и так все понятно. Спасибо!
+
4. need1cc 20.03.12 11:21 Сейчас в теме
5. need1cc 20.03.12 11:21 Сейчас в теме
а все спасибо, разобрлся
+
6. ZLENKO 398 26.03.12 13:28 Сейчас в теме
В Excel 2007-2010 жутко тормозит работа с ячейками :-(
+
7. ZLENKO 398 19.04.12 11:39 Сейчас в теме
Проблему с "тормозами" в Excel 2007-2010 решил через программную эмуляцию действий КАНТРЭЛ-ЦЭ и КАНТРЭЛ-ВЭ.
Формирую текстовый файл, который надо вывести в Excel (можно вставлять формулы), запихиваю его в буфер обмена и выполняю Paste в предварительно подготовленый лист-макет Excel. Нашел 8 различных способов вывода данных в Excel, но этот мне подошел больше всего т.к. с одной стороны обеспечивает высокую скорость, а с другой позволяет работать с оформлением на листе и использовать заготовки-макеты.
+
8. Ele1234567 11.04.14 14:10 Сейчас в теме
Спасибо, будемс смотреть и пробовать.
+
9. buval 65 03.02.15 17:00 Сейчас в теме
Спасибо помогли примеры кодов
+
Оставьте свое сообщение