Как обойти строки табличной части?
Обход строк табличной части проще всего реализуется с помощью цикла Для Каждого СтрокаТЧ Из ТабЧасть Цикл.
При этом переменной цикла будет являться не номер строки, а вся строка как объект. Если нужен еще номер строки, то можно использовать свойство НомерСтроки или добавить переменную и инкрементировать ее в теле цикла.
Есть также возможность использовать обычный цикл Для . По . Цикл, но необходимо помнить, что индекс 1-го элемента коллекции всегда равен 0 (нулю).
Цикл по ячейкам таблицы табличного дока
Как правильно сделать обход ячеек таблицы табличного дока?
Известно количество строк и колонок таблицы и, если все ячейки имели бы такие имена: «R21C2», то нет проблем. Но когда попадаются объединенные ячейки: «R21C7:R21C9» — как тут быть?
(4)
ОбластьСтрока = ТабличныйДокумент.Область(«R»+(Стр+1));
Расш = ОбластьСтрока.Расшифровка;
Как сделать, чтоб Расшифровка была доступна для чтения?
Я типа того задачу делал
// При изменеии поля в Табличном документе
Процедура ТабДокПриИзмененииСодержимогоОбласти(Элемент, Область)
Перем ИмяЯчейки;
МногострочнаяСтрока = СтрЗаменить(СтрЗаменить(Область.Имя,»C»,Символы.ПС),»R»,Символы.ПС);
НомерСтроки = СтрПолучитьСтроку(МногострочнаяСтрока,2);
НомерКолонки = СтрПолучитьСтроку(МногострочнаяСтрока,3);
(0) не совсем понял в чем проблема, если у тебя известны:
«Известно количество строк и колонок таблицы»
Просто обходишь циклом ячейки. Если в имени ячейки встречается «:», то ячейка состовная. Тебе в (15) об этом говорили.
Т.е. если имя «R21C7» — ячейка без объединения
Если «R21C7:R21C9» — есть «:», значит объединенная. Можно еще Обрабатывать сами «R» и «C» (их количество).
аутор, делай так и привет:
ТвояОбласть = ТабДок.ПолучитьОбласть();
Для к = 1 По ТвояОбласть.ВысотаТаблицы Цикл
Сообщить(ТвояОбласть.Область(к,1,к,1).Текст;)
КонецЦикла;