Обнаружение объединенных ячеек в VBA Excel с MergeArea
У меня проблема с этим - мне приходится обнаруживать горизонтально и вертикально объединенные ячейки из таблицы excel. Я должен хранить первые сотовые координаты и длину объединенной области. Я прохожу через таблицу с двумя циклами, по очереди.
Как я могу использовать свойство MergeArea для обнаружения объединенных и не объединенных областей?
Если ячейка не объединена, она должна, вероятно, возвращать пустой диапазон, однако это:
"Если currentRange ничего не значит"
вообще не работает. Есть идеи?
Большое спасибо.
Ответы
Ответ 1
Для этого есть несколько полезных битов кода.
Поместите курсор в объединенную ячейку и задайте эти вопросы в окне "Неверное":
Является ли activecell объединенной ячейкой?
? Activecell.Mergecells
True
Сколько ячеек объединено?
? Activecell.MergeArea.Cells.Count
2
Сколько столбцов объединено?
? Activecell.MergeArea.Columns.Count
2
Сколько строк объединено?
? Activecell.MergeArea.Rows.Count
1
Что такое адрес объединенного диапазона?
? activecell.MergeArea.Address
$F$2:$F$3