Слитые ячейки в Word

Ответить

Код подтверждения
Введите код в точности так, как вы его видите. Регистр символов не имеет значения.

BBCode ВКЛЮЧЁН
[img] ВКЛЮЧЁН
[url] ВКЛЮЧЁН
Смайлики ОТКЛЮЧЕНЫ

Обзор темы
   

Развернуть Обзор темы: Слитые ячейки в Word

Vovik » 15 янв 2005, 01:12

Да нет... Не как в ХТМЛ, совсем не так...
В HTML как раз записывается как слита ячейка.

Naeel Maqsudov » 12 янв 2005, 08:22

По-моему, Word вообще эту информацию никак не хранит, так что остается определять ее по другим параметрам
Ноги у проблемы растут вот откуда:
1)
При объединении ячеек по горизонтали Word (в отличие от Excel) действительно не производит объединение ячеек, а просто расширяет первую на ширину выделенных, собирает в нее все их содержимое выделенных и удаляет их (кроме первой). В результате ВСЕГДА строка - это линейный набор ячеек.

Соответственно если Таблица.Columns.Count = N, а Строка.Columns.Count < N - следовательно тут есть объединенные ячейки (возможно). :)

2)
При объединении по вертикали ячейка опять-таки (как в HTML) ни с чем не объединена, а имеет другую высоту. Одна или несколько следующих строк таблицы при этом как бы терпят разрыв.

Тут сложнее. По идее правый край одной ячейки должен быть существенно левее левого края следующей ячейки :)
см св-ва .Left и .Right. Однако это только прелположение - требуется проверка.

Вобщем таблицы в W организованы как в HTML...
О! Не забывайте о возможности вкладывать одни таблицы в другие, которая реализовалась с W2K (вместе с вертикальным объединением).

Vovik » 09 янв 2005, 01:09

Спасибо и на этом. Только у меня в офисе 2000 этот код возвращал к-во столбцов и 1 на количество рядков. По-моему, Word вообще эту информацию никак не хранит, так что остается определять ее по другим параметрам :( .

Дмит » 08 янв 2005, 23:00

Поискал ещё ответ и пришёл к одному: вопрос довольно непростой!
В старых версиях вообще нельзя было объединять ячейки по вертикали,
по этому этот код наверное не работает.
Точнее работает определение только количество ячеек по вертикали (j = Application.Documents(1).Tables(1).Cell(1, 1).Range.Rows.Count),
а количество по горизонтали - выдаёт столбцов в таблице.
Все эти проблемы наталкивают на одно лобовое решение: скопировать сложную таблицу в Excel и там подсчитать объединённые ячейки.

Vovik » 08 янв 2005, 01:06

Спасибо, конечно, за ответ. Только я не понял, чем это может помочь, у меня для каждой ячейки такой запрос возвращает одно и тоже (невзирая на то как и с кем она была слита).

Дмит » 06 янв 2005, 23:54

Выражения:
i = Application.Documents(1).Tables(1).Cell(1, 1).Range.Columns.Count
j = Application.Documents(1).Tables(1).Cell(1, 1).Range.Rows.Count
помогут определить количество столбцов и строк в объединённой ячейке.

Слитые ячейки в Word

Vovik » 05 янв 2005, 17:07

Добрый день, тут такой вот вопросик: читаю я средствами VBA информацию про таблицы в документе, колонки, строчки, ячейки, и т.д. Но ячейки в таблице могут быть слитыми (получеными в следствии обьединения двух и более других ячеек). Как мне определить, что ячейка слитая и с кем она была слита? Хелп мне пока мало чем помог :( .

Вернуться к началу