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

Иногда требуется сохранить несколько отчетов в книгу Excel. Приведенная процедура рещает эту задачу.

СохранениеТабличныхДокументовВКнигуExcel.txt
Процедура СохранитьВКнигуExcel(МассивТабличныхДокументов)
	Если МассивТабличныхДокументов.Количество()>0 Тогда 
		ДиалогВыбораФайла=Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
		ДиалогВыбораФайла.ПолноеИмяФайла = "";
		ДиалогВыбораФайла.Фильтр="Файлы Microsoft Excel (*.xls)|*.xls|Все файлы (*.*)|*.*";
		ДиалогВыбораФайла.МножественныйВыбор=Ложь;
		ДиалогВыбораФайла.ПроверятьСуществованиеФайла=Истина;
		Если Не ДиалогВыбораФайла.Выбрать() Тогда 
			Возврат;
		КонецЕсли;
 
		Попытка
			xlsApp=ПолучитьCOMОбъект("","Excel.Application");
		Исключение
			Предупреждение("Ошибка при получении объекта Excel. Возможно не установлен Microsoft Office.",15);
			Возврат;
		КонецПопытки;
		xlsApp.SheetsInNewWorkbook = 1;
		xlsApp.DisplayAlerts = 0;
		book = xlsApp.Workbooks.Add();
		delSheet = book.Sheets(1);
		СчетчикЛистов = 1;
		Для Каждого ТабДок из МассивТабличныхДокументов Цикл 
			ИмяФайла=ПолучитьИмяВременногоФайла("xls");
			ТабДок.Записать(ИмяФайла, ТипФайлаТабличногоДокумента.XLS);
			tempBook=xlsApp.Workbooks.Open(ИмяФайла);
			tempBook.Sheets(1).Name="Лист"+СчетчикЛистов;
			СчетчикЛистов=СчетчикЛистов+1;
			tempBook.Sheets(1).Copy(delSheet);
			tempBook.Close(0);
 
			УдалитьФайлы(ИмяФайла);
		КонецЦикла;
		Попытка
			delSheet.Delete();
		Исключение
		КонецПопытки;
		book.SaveAs(ДиалогВыбораФайла.ПолноеИмяФайла,-4143);
		xlsApp.DisplayAlerts = 1;
		xlsApp.Workbooks.Close();
		xlsApp.Quit();
		//ЗапуститьПриложение( ДиалогВыбораФайла.ПолноеИмяФайла );
	КонецЕсли;
КонецПроцедуры