Выгрузка в несколько листов/файлов Excel в УФ

13.10.17

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

Понадобилось выгрузить несколько отчетов в несколько листов Excel. Написал универсальную функцию, которая позволяет это сделать. Также есть вариант, который сохраняет отчеты в несколько файлов Excel.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Выгрузка в несколько листов/файлов Excel в УФ
.zip 65,42Kb
31 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Обработка, демонстрирующая функционал, выдает отчет по остаткам и продажам в УТ11 и сохраняет отчеты по отдельным видам номенклатуры в отдельные листы/файлы.

Обработка имеет вид:

После выгрузки выдается предупреждение:

Если не установлена галочка «Выгружать в Excel», то данные будут выгружаться в отчет:

Если выбран переключатель «В отдельные файлы», то выгрузка произойдет в отдельные файлы:

Если выбран переключатель «В отдельные листы», то выгрузка произойдет в отдельные листы одного файла:

Код по выгрузке в файлы имеет вид (СписокОтчетов – массив табличных документов):

&НаКлиенте
Процедура СохранитьОтчетыВФайлExcelСЛистами(СписокОтчетов, ИмяФайла) Экспорт
    Эксель    = New COMObject("Excel.Application");

    Первый = истина;

    //Для защиты от дублей имен
    СооИмена = Новый СписокЗначений();

    //Перебираем отчеты в MXL
    Для Каждого Элемент ИЗ СписокОтчетов Цикл
        ТабДок = Элемент.Значение;
        //ТабДок.Показать();
        ИмяВременногоФайла = ПолучитьИмяВременногоФайла("XLS");
        ТабДок.Записать(ИмяВременногоФайла, ТипФайлаТабличногоДокумента.XLS); //Сохраняем в временный файл

        ТекКнига = Эксель.Workbooks.Open(ИмяВременногоФайла);
        Если Первый Тогда
            Книга = ТекКнига; //Первый файл и есть результат, чтобы сохранялись цвета
        Иначе
            ТекКнига.Sheets(1).Copy(, Книга.Sheets(Книга.Sheets.Count)); //Copy(Before, After)
        КонецЕсли;


        //Защита от одинаковых ярлыков
        ТекБазаНаименование = Элемент.Представление;
        ТекНаименование = ТекБазаНаименование; СчНаименований = 2;
        Пока СооИмена.НайтиПоЗначению(ТекНаименование) <> Неопределено Цикл
            ТекНаименование = ТекБазаНаименование + "(" + СчНаименований + ")";
            СчНаименований = СчНаименований + 1;
        КонецЦикла;
        СооИмена.Добавить(ТекНаименование);
        Книга.Sheets(Книга.Sheets.Count).Name = ТекНаименование; //Переименовываем

        Если Первый Тогда
            //Делаем доступными ярлыки листов
            Эксель.ActiveWindow.DisplayWorkbookTabs = 1;
            Эксель.ActiveWindow.TabRatio = 0.6;
            Первый = ложь;
        Иначе
            ТекКнига.Close();
        КонецЕсли;

    КонецЦикла;

    //Удаляем, чтобы не переспрашивал
    Файл = Новый Файл(ИмяФайла);
    Если Файл.Существует() Тогда
        УдалитьФайлы(ИмяФайла);
    КонецЕсли;

    Книга.SaveAs(ИмяФайла, -4143); //xlWorkbookNormal -4143 Workbook normal

    Книга.Close();

КонецПроцедуры

&НаКлиенте
Процедура СохранитьОтчетыВФайлыExcel(СписокОтчетов, ИмяФайла) Экспорт
    Ф = Новый Файл(ИмяФайла);


    //Перебираем отчеты в MXL
    Для Каждого КЗ ИЗ СписокОтчетов Цикл
        ИмяТекущегоФайла = Ф.Путь + "\" + Ф.ИмяБезРасширения + "_" + КЗ.Представление + ".XLS";
        КЗ.Значение.Записать(ИмяТекущегоФайла, ТипФайлаТабличногоДокумента.XLS); //Сохраняем в временный файл
    КонецЦикла;

КонецПроцедуры

Вступайте в нашу телеграмм-группу Инфостарт

экспорт в Excel

См. также

SALE! 10%

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

Универсальная обработка для загрузки документов из Excel в 1С. Забудьте о ручном вводе: загружайте документы из Excel в 1С за секунды! Не требует указания параметров (номера колонок, номер первой строки таблицы и т.д.) и предварительной настройки. Просто выбираете файл эксель, документ 1С и нажимаете кнопку "Загрузить"

8000 7200 руб.

09.11.2016    256084    1141    936    

1075

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

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

11100 руб.

29.10.2014    224189    694    528    

474

SALE! 10%

Загрузка и выгрузка в 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 1С:Розница 3.0 Платные (руб)

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

18000 16200 руб.

20.11.2015    165667    412    386    

535

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

Обработки загрузки данных о продажах WildBerries предназначены для следующих конфигураций: Бухгалтерия предприятия, редакция 3.0; Управление нашей фирмой, редакция 3.0; Розница, редакция 3.0; Управление торговлей, редакция 11; Управление торговлей, редакция 10.3

6000 руб.

11.12.2019    61455    1048    3    

275

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

Кто получает документы в формате XML из различных сервисов ЭДО (формат 820 приказ ФНС 31 мая 2019 или формат 970 (2025г) 19.12.2023 № ЕД-7-26/970@) и набивает их вручную в 1С, тот наверняка хотел бы автоматизировать этот процесс. Поддержка конфигураций: Бухгалтерии 3, УПП 1.3, 1С:КА 2.4 и 1С:КА 2.5, УТ10, УТ11.4 и УТ11.5. Для бухгалтерии 3 добавлена поддержка формат 5.03 от 23/01/2025

4320 руб.

11.02.2020    98685    328    159    

245

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

Загрузка данных отчета о реализации и продаже товаров из сервиса Яндекс.Маркета «Беру» из отчетов Excel для конфигурации: Бухгалтерия предприятия, редакция 3.0; Управление торговлей, редакция 11; Управление торговлей, редакция 10.3; Управление нашей фирмой, редакция 3.0 и Розница, редакция 3.0 в документ «Отчет комиссионера о продажах».

6000 руб.

09.12.2020    28357    288    1    

141
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. rhtr 94 17.11.17 11:44 Сейчас в теме
ТекБазаНаименование = Элемент.Представление;

Заменить на
ТекБазаНаименование = Лев(Элемент.Представление,30);


А то в названии книги больше 31 символов нельзя воткнуть.
Для отправки сообщения требуется регистрация/авторизация