Перейти к содержимому

Kutools для Office — один пакет. Пять инструментов. Выполняйте больше.

Как автоматически объединить пустые ячейки сверху/слева в Excel?

Author Sun Last modified

В этой статье я расскажу об объединении пустых ячеек сверху или слева автоматически, как показано на скриншоте ниже. На самом деле, в Excel нет встроенной утилиты для выполнения этой задачи, но макросы могут помочь.

Объединить пустые ячейки сверху    
original data darrow right  merge blank above

 Объединить пустые ячейки слева    
original data arrow right merge blank left

Объединить пустые ячейки сверху на основе столбца

Объединить пустые ячейки сверху (работает только для одного столбца)

Объединить пустые ячейки слева


Объединить пустые ячейки сверху на основе столбца

Предположим, у вас есть диапазон данных в трех столбцах, и вы хотите объединить данные сверху на основе столбца C.
dsample data

1. Нажмите Alt + F11чтобы открыть окно Microsoft Visual Basic for Applications и нажмите Insert > Module. Смотрите скриншот:
click Insert > Module

2. Затем вставьте следующий код в пустой скрипт. Смотрите скриншот:

VBA: Объединение пустых ячеек сверху на основе следующего столбца

Sub MergeCells()
'UpdatebyExtendoffice2017025
    Dim xRg As Range
    Dim xCell As Range
    Dim xAddress As String
    On Error Resume Next
    xAddress = Application.ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Select a range:", "KuTools For Excel", xAddress, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    For Each xCell In xRg
        If xCell.Value = "" Then
            Range(xCell, xCell.Offset(-1, 0)).Merge
        End If
    Next
End Sub

copy and paste the code into the module

3. Нажмите F5 для запуска кода, после чего появится диалоговое окно с запросом выбрать диапазон для работы. Смотрите скриншот:
vba code to select a range

4. Нажмите OK, затем пустые ячейки будут объединены сверху. Смотрите скриншот:
the blank cells are merged above

a screenshot of kutools for excel ai

Раскройте магию Excel с Kutools AI

  • Умное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это посредством простых команд.
  • Пользовательские формулы: Создавайте индивидуальные формулы для оптимизации ваших рабочих процессов.
  • Кодирование VBA: Пишите и внедряйте код VBA без особых усилий.
  • Интерпретация формул: Легко разбирайтесь в сложных формулах.
  • Перевод текста: Преодолейте языковые барьеры в ваших таблицах.
Улучшите возможности Excel с помощью инструментов на базе ИИ. Скачать сейчас и испытайте беспрецедентную эффективность!

Объединить пустые ячейки сверху (работает только для одного столбца)

Вот макрос, который может объединять пустые ячейки сверху в указанном столбце.

1. Нажмите Alt + F11 чтобы открыть окно Microsoft Visual Basic for Applications и нажмите Insert > Module. Смотрите скриншот:
click Insert > Module

2. Вставьте следующий код в скрипт. Смотрите скриншот:

VBA: Объединить пустые ячейки сверху

Sub mergeblankswithabove()
'UpdatebyExtendoffice20171025
    Dim I As Long
    Dim xRow As Long
    Dim xRg As Range
    Dim xCell As Range
    Dim xAddress As String
    On Error Resume Next
    xAddress = Application.ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Select a range (single column):", "KuTools For Excel", xAddress, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    If xRg.Columns.Count > 1 Then
        MsgBox "Only work for single column", , "KuTools For Excel"
        Exit Sub
    End If
    xRow = xRg.Rows.Count
    Set xRg = xRg(xRow)
    For I = xRow To 1 Step -1
        Set xCell = xRg.Offset(I - xRow, 0)
        Debug.Print xCell.Address
        If xCell.Value = "" Then Range(xCell, xCell.Offset(-1, 0)).Merge
    Next
End Sub

copy and paste the code into the module

3. Нажмите F5 для запуска кода, после чего появится диалоговое окно для выбора диапазона столбца. Смотрите скриншот:
vba code to select a column

4. Нажмите OK. Пустые ячейки в выбранном диапазоне будут объединены сверху.

original data arrow right merge blank above

Объединить пустые ячейки слева

Если вы хотите объединить пустые ячейки слева, следующий код поможет вам.

1. Нажмите Alt + F11 чтобы открыть окно Microsoft Visual Basic for Applications, и нажмите Insert > Module. Смотрите скриншот:
click Insert > Module

2. Затем вставьте следующий код в пустой скрипт. Смотрите скриншот:

VBA: Объединить пустые ячейки слева

Sub mergeblankswithleft()
'UpdatebyExtendoffice20171025
    Dim xRg As Range
    Dim xCell As Range
    Dim xAddress As String
    On Error Resume Next
    xAddress = Application.ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Select a range:", "KuTools For Excel", xAddress, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    For Each xCell In xRg
        If xCell.Value = "" Then Range(xCell, xCell.Offset(0, -1)).Merge
    Next
End Sub

copy and paste the code into the module

3. Нажмите F5 для запуска кода, после чего появится диалоговое окно для выбора диапазона. Смотрите скриншот:
vba code to select a range data

4. Нажмите OK. Пустые ячейки будут объединены слева.

 Объединить пустые ячейки слева    
original data arrow right merge blank left

Лучшие инструменты для повышения продуктивности в Office

🤖 Kutools AI Aide: Совершенно новый подход к анализу данных благодаря: Интеллектуальное выполнение |  Генерация кода  |  Создание пользовательских формул |  Анализ данных и построение диаграмм  |  Вызов Kutools Functions
Популярные функции: Поиск, выделение или отметка дубликатов | Удалить пустые строки | Объединить столбцы или адреса без потери данных | Округлить ...
Супер ПОИСК: VLOOKUP по нескольким критериям | VLOOKUP по нескольким значениям | Многолистовой поиск | Распознавание нечетких соответствий ...
Расширенный раскрывающийся список: Быстро создать раскрывающийся список | Зависимый раскрывающийся список | Множественный выбор в раскрывающемся списке ...
Менеджер столбцов: Добавить определённое количество столбцов | Переместить столбцы | Переключить видимость скрытых столбцов | Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка фокусировки | Дизайн листа | Улучшенная строка формулы | Управление книгой и листами | Библиотека автотекста | Выбор даты | Объединить данные | Зашифровать/расшифровать ячейки | Отправить письмо по списку | Супер фильтр | Специальный фильтр (фильтр жирный/курсив/зачеркнутый...) ...
Топ15 наборов инструментов:12 текстовых инструментов (Добавить текст, Удалить определенные символы, ...) |50+ типов диаграмм (Диаграмма Ганта, ...) |40+ полезных формул (Расчет возраста на основе даты рождения, ...) |19 инструментов для вставки (Вставить QR-код, Вставить изображение по пути, ...) |12 инструментов преобразования (Преобразовать в слова, Конвертация валюты, ...) |7 инструментов объединения и разделения (Расширенное объединение строк, Разделить ячейки, ...) | ... и многое другое
Используйте Kutools на предпочитаемом вами языке — поддерживает Английский, Испанский, Немецкий, Французский, Китайский и более40 других языков!

Повысьте свои навыки работы в Excel с помощью Kutools для Excel и ощутите эффективность на новом уровне. Kutools для Excel предлагает более300 расширенных функций для повышения производительности и экономии времени. Нажмите здесь, чтобы выбрать функцию, которая вам нужнее всего...


Office Tab добавляет вкладки в Office и делает вашу работу намного проще

  • Включите режим вкладок для редактирования и чтения в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна вместо новых отдельных окон.
  • Увеличьте свою продуктивность на50% и уменьшите количество щелчков мышью на сотни ежедневно!

Все надстройки Kutools. Один установщик

Пакет Kutools for Office включает надстройки для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro — идеально для команд, работающих в разных приложениях Office.

Excel Word Outlook Tabs PowerPoint
  • Комплексный набор — надстройки для Excel, Word, Outlook и PowerPoint плюс Office Tab Pro
  • Один установщик, одна лицензия — настройка занимает считанные минуты (MSI-совместимо)
  • Совместная работа — максимальная эффективность между приложениями Office
  • 30-дневная полнофункциональная пробная версия — без регистрации и кредитной карты
  • Лучшее соотношение цены и качества — экономия по сравнению с покупкой отдельных надстроек