gifts2017

Сохранение табличного документа с группировками и фото в Excel

Опубликовал Max Черепахин (tamaks) в раздел Программирование - Практика программирования

Стандартное сохранение табличного документа с группировками и фото из 1С в файл Excel может не давать желаемого результата. Приводится пример программного сохранения файла с установкой определенного уровня группировок и изменением свойств изображений содержащихся в файле.

Как-то раз потребовалось сохранять отчет о продажах по магазинам с фото, но натолкнулся на такие особенности сохранения из 1С:

Так, при сохранении файла картинки имели свойства "перемещать, но не изменять размеры", а для работы с группировками требовался режим "перемещать и изменять объект вместе с ячейками", в установленной версии программы Excel глобальных настроек на эту тему я не нашел.

Встал вопрос о программной реализации, в результате решения которого было определено два возможных пути: первый - работа с макросами (в момент открытия файла) на стороне клиента; второй - внесение изменений в файл (в момент его сохранения) на стороне сервера. Как говорится, "сколько людей, столько и мнений", мной был выбран вариант, наиболее подходящий в моей ситуации.

Приводится пример программного сохранения файла с установкой определенного уровня группировок и изменением свойств изображений, содержащихся в файле.

ФайлНаДиске = "C:\Users\Desktop\report.xlsx";       //полный путь к обрабатываемому файлу
Excel = Новый COMОбъект("Excel.Application");       //инициализация COM-объекта
Книга = Excel.WorkBooks.Open(СокрЛП(ФайлНаДиске));  //открываем книгу
ExcelSheet = Excel.Sheets(1);                       //инициализируем лист книги
Книга.Password = Строка(Пароль);                    //устанавливаем пароль на книгу
ExcelSheet.DrawingObjects.Placement = 1;            //устанавливаем режим "ИЗМЕНЕНИЯ РАЗМЕРА ОБЪЕКТОВ ВМЕСТЕ С ЯЧЕЙКАМИ"
ExcelSheet.Outline.ShowLevels(2);                   //сворачиваем группировки 
Книга.Save();                                       //пересохраняем документ
Excel.Application.Quit();                           //выходим из приложения

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
Пример обработки
.epf 7,51Kb
17.03.15
1
.epf 7,51Kb 1 Скачать

См. также

Подписаться Добавить вознаграждение
В этой теме еще нет сообщений.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа