Установка параметров страницы Excel

28.03.12

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

Процедура для установки параметров страницы и высоты строк табличных документов, сохраненных в формате Excel.

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

Представленная процедура предназначена для решения этой проблемы. Конечно не обошлось без старого доброго ОЛЕ.

Процедура УстановитьПараметрыПечатиExcel(ИмяФайла, Ориентация, ПолеСлева = 10, ПолеСправа = 10, ПолеСверху = 10, ПолеСнизу = 10, АвтоВысотаСтрок = Ложь) Экспорт

    Попытка
       
Excel = Новый COMОбъект("Excel.Application");
       
Excel.Visible = True;
       
Workbook = Excel.Workbooks.Open(ИмяФайла);
       
Лист = Workbook.Sheets(1);
       
Лист.PageSetup.Zoom = False;
       
Лист.PageSetup.FitToPagesWide = 1; // По ширине листа
       
Лист.PageSetup.FitToPagesTall = False;
        Если
Ориентация = ОриентацияСтраницы.Ландшафт Тогда
           
Лист.PageSetup.Orientation = 2; // xlLandscape
       
Иначе
           
Лист.PageSetup.Orientation = 1; // xlPortrait
       
КонецЕсли;
       
Лист.PageSetup.LeftMargin = Excel.Application.InchesToPoints(ПолеСлева / 25.4); // Поле слева
       
Лист.PageSetup.RightMargin = Excel.Application.InchesToPoints(ПолеСправа / 25.4); // Поле справа
       
Лист.PageSetup.TopMargin = Excel.Application.InchesToPoints(ПолеСверху / 25.4); // Поле сверху
       
Лист.PageSetup.BottomMargin = Excel.Application.InchesToPoints(ПолеСнизу / 25.4); // Поле снизу

       
Если АвтоВысотаСтрок Тогда
           
// Устанавливаем высоту строк
           
НомерСтроки = 1;
            Пока
НомерСтроки < 100000 Цикл

               
Ячейка = Лист.Cells(НомерСтроки, 1);
               
Строка = Ячейка.EntireRow();
               
Строка.AutoFit();
                Если
ПустаяСтрока(Ячейка.Value) Тогда
                    Прервать;
                КонецЕсли;
               
НомерСтроки = НомерСтроки + 1;

            КонецЦикла;
        КонецЕсли;

       
Excel.DisplayAlerts = False;
       
Workbook.Save();
       
Workbook.Close();
       
Workbook = Неопределено;
       
Excel.Quit();
       
Excel = Неопределено;

    Исключение

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

КонецПроцедуры
// УстановитьПараметрыПечатиExcel()

При установке авто высоты строки цикл прерывается, если встречается строка с пустым содержимым текста ячейки. Сделано не универсально, поэтому вы можете определить свой алгоритм выхода из цикла.

Надеюсь, кому-нибудь пригодится.

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

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

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

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

5490 руб.

12.08.2021    45553    571    71    

218

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

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

12444 руб.

29.10.2014    231495    745    532    

495

WEB-интеграция Загрузка и выгрузка в Excel Программист Пользователь 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Розничная и сетевая торговля (FMCG) Россия Платные (руб)

Расширение освободит вас от необходимости вручную обновлять информацию о товарах в группах ВКонтакте. Достаточно задать правила один раз, и система автоматически формирует файлы yml для дальнейшей загрузки в группы в ВК. Вы сможете легко выбирать, какие товары публиковать, создавая гибкие критерии отбора. Например, можно добавить важные для покупателей параметры: цвет, размер или другие характеристики.

12200 руб.

29.08.2025    2559    7    6    

8

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

Загружает данные из Акта приемки товара от ООО «Вайлдберриз», полученный из личного кабинета в формате *.xlsx или API в документ "Реализация (акты, накладные, УПД)" для конфигурации: Бухгалтерия предприятия, редакция 3.0, в документ "Реализация товаров и услуг" для Управление торговлей, редакция 11; Комплексная автоматизация 2; ERP 2 Управление предприятием и в документ "Расходная накладная" для Управление нашей фирмой 3.0; Розница 3.0

6100 руб.

24.01.2021    24702    121    0    

63
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. oslokot 196 04.02.14 13:43 Сейчас в теме
2. Tavalik 3458 14.03.14 11:39 Сейчас в теме
Спасибо! Стояла подобная задача. Благородя вам сэкономил массу времени.
3. nadja_gw 28 04.04.14 08:25 Сейчас в теме
Спасибо, то что надо было!!!!
4. mc1c80 18.12.14 09:02 Сейчас в теме
Спасибо, помогли.
5. -ioan- 02.02.15 14:30 Сейчас в теме
Спасибо! То, что нужно!!
6. tw1ster_ok 12.02.15 17:36 Сейчас в теме
Спасибо. Очень помогли!
7. vis_tmp 33 04.09.16 12:52 Сейчас в теме
Спасибо за статью!
8. kabantus 20.06.18 09:57 Сейчас в теме
9. m.gimaev 25.07.22 17:24 Сейчас в теме
Спасибо из 2022 года!!!
Для отправки сообщения требуется регистрация/авторизация