2015-06-11 2 views
0

Я пытаюсь начать в верхней части столбца и перемещаться вниз, сливая каждую пустую ячейку, пока не достигнет следующей ячейки с информацией в ней. Например, если у меня есть «Шаг 1» в ячейке A1, ячейки A2-A5 пусты, а ячейка A6 содержит «Шаг 2», я хотел бы объединить A1 в A5. Тогда, если A22 содержит «Шаг 3» и ячейки A7: A21 были пустыми, я бы объединил A6 в A21.Слить в следующую заполненную ячейку

Действительно оцените любую помощь. Спасибо

+2

Слитые клетки - это боль в патете, и ее следует избегать. Используйте форматирование. Нарисуйте симпатичную рамку вокруг диапазона. Таким образом, вы все равно сможете выбрать отдельные строки. – teylyn

+1

Клетка (.) .Interior.Color' (aka * Fill *) может быть другим методом визуальной идентификации без слияния. – Jeeped

ответ

0

Я полностью согласен с комментариями, если вы можете избежать этого, не сливайте их, чтобы они выглядели слитыми с использованием границы; но если вы это сделаете, то будете делать то, что вы просите:

Dim cell As Range 
    Dim StartCell As Range 
    Dim EndCell As Range 

    For Each cell In Range("a1", Range("a1000000").End(xlUp)) 
     If cell <> "" Then 
     If StartCell Is Nothing Then 
      Set StartCell = cell 
     Else 
      Set EndCell = cell.Offset(-1, 0) 
      Range(StartCell, EndCell).Merge 
      Set StartCell = cell 
      Set EndCell = Nothing 
     End If 
     End If 
    Next cell 

Удачи!

Смежные вопросы