Процедуры ПриКомпоновке()
... НастройкиОтчета = КомпоновщикНастроек.ПолучитьНастройки();
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, НастройкиОтчета, ДанныеРасшифровки,,,Ложь);
ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки);
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
ПроцессорВывода.Вывести(ПроцессорКомпоновки);
ОбъединитьЯчейкиВТабличномДокументе(ДокументРезультат);
КонецПроцедуры
Процедура ОбъединитьЯчейкиВТабличномДокументе(ТабличныйДокумент) Экспорт
СтарыйКонтрагент = "";
НачалоОбласти = "";
ЭтоПервыйВход = Истина;
//представим нашу область объединения ввиде квадрата.
//его параметры:
// верхний левый улог - строка R26 столбец С6
// правый нижний угол - строка R26 столбец С23
//в итоге получилась область R26С6:R26С23
//так вот для того, чтобы программно объединить ячейки - в моем случаи нужно узнать строки. А колонки всегда жестко завязаны.
ОбластьЛевыйВерхнийУгол = 6;
ОбластьПравыйНижнийУгол = 1;
ВысотаТЧ = ТабличныйДокумент.ВысотаТаблицы+1;
Для Сч = 6 По ВысотаТЧ Цикл
ТекОбласть = "R" + Сч + "C1:R" + Сч + "C1";
НайденнаяОбласть = ТабличныйДокумент.Область(ТекОбласть);
Если ТекОбласть <> НачалоОбласти И НайденнаяОбласть.Текст <> СтарыйКонтрагент Тогда
Если НЕ ЭтоПервыйВход Тогда
ГотоваяОбластьДляОбъединения = "R" + Строка(ОбластьЛевыйВерхнийУгол) + "C1:R" + Строка(Сч-1) + "C1";
//ОбластьЛевыйВерхнийУгол = Сч;
ОбластьПравыйНижнийУгол = Сч;
Область = ТабличныйДокумент.Область(ГотоваяОбластьДляОбъединения);
Область.Объединить();
ОбластьЛевыйВерхнийУгол = Сч;
Иначе
ЭтоПервыйВход = Ложь;
КонецЕсли;
НачалоОбласти = ТекОбласть;
СтарыйКонтрагент = НайденнаяОбласть.Текст;
КонецЕсли;
КонецЦикла;
КонецПроцедуры