0
- 17.03.2022 - 10:47
|
Добрый день ! Читаю файл MS Word из 1С. Конкретно мне нужно прочитать таблицы в нем. Оказалось, что некоторые таблицы в файле имеют объединенные по вертикали ячейки ( в "шапке" таблицы ), и из за этого не работает метод Rows: Word = Новый COMОбъект("Word.Application"); Word.Visible = Ложь; Word.Documents.Open(ПутьКФайлуЗагрузки); Документ = Word.ActiveDocument(); ТаблицаДокумента= Документ.Tables(ИндексТаблицы); Row = ТаблицаДокумента.Rows(ИндексТаблицы) Я нашел как можно прочитать таблицу с такими ячейками, но проблема в том, что в файле есть таблицы и без объединенных ячеек, тогда читать их просто. Суть вопроса : Я хотел через попытку - исключение - узнать есть ли такие ячейки в шапке таблицы и соответственно считывать таблицу со строки на +1 больше. Но конструкция : Попытка Row = ТаблицаДокумента.Rows(ИндексТаблицы); ЕстьОбъединенныеЯчейки=Ложь; Исключение ЕстьОбъединенныеЯчейки=Истина; КонецПопытки; не срабатывает исключение и ошибка выдается на обращении к методу Rows внутри попытки ! Текст ошибки : Ошибка при вызове метода контекста (Rows) {ВнешняяОбработка.ЗагрузкаОборудования.Форма.Форма .Форма(70)**: Row = ТаблицаДокумента.Rows(ИндексТаблицы); по причине: Произошла исключительная ситуация (Microsoft Word): Отсутствует доступ к отдельным строкам, поскольку таблица имеет ячейки, объединенные по вертикали. я могу проанализировать конечно содержание ячеек напрямую, но почему не срабатывает исключение ? | |
![]() | Интернет-форум Краснодарского края и Краснодара |