Процедура СохранитьТаблицуВФайлExcel(Таблица, ПолноеИмяФайла="", ОткрыватьДиалогВыбораФайла=Истина, ВыгружаемыеКолонки="") Экспорт Если ПустаяСтрока(ПолноеИмяФайла) ИЛИ ОткрыватьДиалогВыбораФайла Тогда Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение); Диалог.Заголовок = "Сохранение документа Excel"; Диалог.Фильтр = "Документ Excel (*.xls)|*.xls"; Диалог.Расширение = "xls"; Диалог.ПолноеИмяФайла = ПолноеИмяФайла; Диалог.Каталог = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ОсновнойКаталогФайлов"); Если (Диалог.Выбрать()) И (НЕ ПустаяСтрока(Диалог.ПолноеИмяФайла)) Тогда ПолноеИмяФайла = Диалог.ПолноеИмяФайла; Иначе Возврат; КонецЕсли; КонецЕсли; ФайлНаДиске = Новый Файл(ПолноеИмяФайла); Попытка // Загрузка Microsoft Excel Состояние("Выгрузка данных из 1С в Microsoft Excel..."); ExcelПриложение = Новый COMОбъект("Excel.Application"); Книга = ExcelПриложение.WorkBooks.Add(); Лист = Книга.WorkSheets(1); Исключение Сообщить("Ошибка при загрузке Microsoft Excel." + Символы.ПС + ОписаниеОшибки(), СтатусСообщения.Внимание); Возврат; КонецПопытки; Если ПустаяСтрока(ВыгружаемыеКолонки) Тогда ТаблицаВыгрузки = Таблица.Скопировать(); Иначе ТаблицаВыгрузки = Таблица.Скопировать(, ВыгружаемыеКолонки); КонецЕсли; Для Кол = 0 По ТаблицаВыгрузки.Колонки.Количество()-1 Цикл Лист.Cells(1, Кол + 1).Value = ТаблицаВыгрузки.Колонки[Кол].Заголовок; КонецЦикла; Попытка Для Стр = 0 По ТаблицаВыгрузки.Количество()-1 Цикл Для Кол = 0 По ТаблицаВыгрузки.Колонки.Количество()-1 Цикл Если ТипЗнч(ТаблицаВыгрузки[Стр][Кол]) = Тип("Число") Тогда // Установним формат для типа Число //Лист.Cells(Стр + 2, Кол + 1).NumberFormat = "0,00"; Лист.Cells(Стр + 2, Кол + 1).Value = ТаблицаВыгрузки[Стр][Кол]; Иначе // Для всех других типов установим формат "Текстовый" //Лист.Cells(Стр + 2, Кол + 1).NumberFormat = "@"; Лист.Cells(Стр + 2, Кол + 1).Value = Строка(ТаблицаВыгрузки[Стр][Кол]); КонецЕсли; КонецЦикла; КонецЦикла; ExcelПриложение.DisplayAlerts = False; Книга.SaveAs(ПолноеИмяФайла); ExcelПриложение.ActiveWorkbook.Close(); ExcelПриложение.Quit(); Сообщить("Файл выгружен успешно: " + ПолноеИмяФайла); Исключение Сообщить("Ошибка записи данных файла :" + ПолноеИмяФайла); Сообщить(ОписаниеОшибки()); Попытка ExcelПриложение.Quit(); Исключение КонецПопытки; КонецПопытки; КонецПроцедуры