Как автоматически объединить пустые ячейки выше / слева в Excel?
В этой статье я расскажу об автоматическом объединении пустых ячеек вверху или слева, как показано на скриншоте ниже. На самом деле нет встроенной утилиты, которая могла бы справиться с этой задачей, но коды макросов могут.
Объединить пустые поля выше | ||
Объединить оставшиеся пробелы | ||
Объединить пустые ячейки выше на основе столбца
Объединить пустые ячейки выше (работает только для одного столбца)
Объединить оставшиеся пустые ячейки
Объединить пустые ячейки выше на основе столбца
Предположим, что есть диапазон данных в трех столбцах, и теперь вы хотите объединить данные выше на основе столбца C.
1. Нажмите Alt + F11кeys, чтобы включить Microsoft Visual Basic для приложений окно и щелкните Вставить > Модули. Смотрите скриншот:
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
3. Нажмите F5 нажмите клавишу для запуска кода, а затем появится диалоговое окно, напоминающее вам о выборе диапазона для работы. Смотрите скриншот:
4. Нажмите OK, то пустые ячейки были объединены выше. Смотрите скриншот:
Объединить пустые ячейки выше (работает только для одного столбца)
Вот код макроса, который может объединить пустые ячейки выше в указанном столбце.
1. Нажмите Alt + F11 ключи для включения Microsoft Visual Basic для приложений окно и щелкните Вставить > Модули. Смотрите скриншот:
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
3. Нажмите F5 нажмите клавишу, чтобы запустить код, и появится диалоговое окно, в котором вы можете выбрать диапазон столбцов. Смотрите скриншот:
4. Щелкните ОК. И пустые ячейки в выделенной области были объединены выше.
Объединить оставшиеся пустые ячейки
Если вы хотите объединить оставшиеся пустые ячейки, следующий код может оказать вам услугу.
1. Нажмите Alt + F11 ключи для включения Microsoft Visual Basic для окна приложений и щелкните Вставить > Модули. Смотрите скриншот:
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
3. Нажмите F5 нажмите клавишу для запуска кода, и появится диалоговое окно для выбора диапазона. Смотрите скриншот:
4. Нажмите OK. Пустые ячейки объединены слева.
Объединить оставшиеся пробелы | ||
Объединить те же ячейки или разъединить ячейку
|
Лучшие инструменты для офисной работы
Улучшите свои навыки работы с Excel с помощью Kutools for Excel и почувствуйте эффективность, как никогда раньше. Kutools for Excel предлагает более 300 расширенных функций для повышения производительности и экономии времени. Нажмите здесь, чтобы получить функцию, которая вам нужна больше всего...
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!