Страницы: 1
RSS
Определение диапазона объединенной ячейки.
 
Доброго времени суток уважаемые Знатоки! Подскажите, как можно определить начало строки и окончание объединенной ячейки. Объединенные ячейки образуются случайно. (Интересуют ячейки на границах листа). Файл пример прилагаю, интересует 33 строка, как вариант. В дальнейшем необходимо подогнать границы листа. Спасибо за любую помощь!
 
Код
?cells(33,1).mergearea.address
 
Чтобы в дальнейшем выставить границы листа, необходимо знать с какой строки начинается объединенная ячейка и на какой строке заканчивается. Вся объединенная ячейка должна быть на одном листе.
 
Число строк на странице
Код
Dim KolStrok As Long
    KolStrok = ActiveSheet.HPageBreaks(1).Location.Row - 1

Проверяйте объединенная ли ячейка на границе листа и сдвигайте горизонтальный разрыв
 
К сожалению не так все просто, мне необходимо знать номера строк начала и окончания. Вот что-то похожее наше
Cells(KolStrok, 1).Select
Location = Selection.Address(False, False)
Выдает
Location=A32:A34 (у меня немного другая таблица, но суть одна)
Подскажите, как мне в качестве переменных вывести 32 и 34?
 
Код
?cells(32,1).mergearea.row 
?cells(32,1).mergearea.row +cells(32,1).mergearea.rows.count-1
 
УРРАААА, заработало!!! Огромное спасибо!!!
 
Код
    If Cells(KolStrok, 1).MergeCells Then
      iAdr = Cells(KolStrok, 1).MergeArea.Address(False, False)
    End If
 
Если правильно понял
Код
Sub Макрос1()
    Dim KolStrok As Long
    ActiveSheet.ResetAllPageBreaks
    For n = 1 To ActiveSheet.UsedRange.Parent.HPageBreaks.Count
        KolStrok = ActiveSheet.HPageBreaks(n).Location.Row - 1
        If Cells(KolStrok, 1).MergeArea.Rows.Count - 1 + Cells(KolStrok, 1).MergeArea.Row <> KolStrok Then
            Set ActiveSheet.HPageBreaks(n).Location = Range(Cells(KolStrok, 1).MergeArea.Address)
        End If
    Next
End Sub
Страницы: 1
Наверх