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

Например, у меня есть список значений, который включает несколько пустых ячеек, и я хочу объединить каждый набор данных между пустыми ячейками в одну ячейку и вывести объединенные значения в другой столбец, как показано на следующем скриншоте. Как можно объединять ячейки до тех пор, пока не будет найдена пустая ячейка в столбце?
Объединение значений ячеек до тех пор, пока не будет найдена пустая ячейка в столбце с помощью кода VBA
Прямого способа объединить набор ячеек между пустыми ячейками нет, но вы можете применить следующий код VBA для решения этой задачи. Пожалуйста, выполните следующие действия:
1. Удерживайте клавиши ALT + F11, чтобы открыть окно Microsoft Visual Basic для приложений.
2. Нажмите Вставка > Модуль и вставьте следующий код в окно Модуля.
Код VBA: объединение значений ячеек до тех пор, пока не будет найдена пустая ячейка
Sub Concatenatecells()
'updateby Extendoffice
Dim xRg As Range
Dim xSaveToRg As Range
Dim xTxt As String
Dim xCell As Range
Dim xTStr As String
On Error Resume Next
xTxt = ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Please select the data range:", "Kutools for Excel", xTxt, , , , , 8)
If xRg Is Nothing Then Exit Sub
If xRg.Columns.Count > 1 Then
MsgBox "the selected range is more than one column", vbInformation, "Kutools for Excel"
Exit Sub
End If
Set xSaveToRg = Application.InputBox("Please select output cell:", "Kutools for Excel", , , , , , 8)
If xSaveToRg Is Nothing Then Exit Sub
Set xSaveToRg = xSaveToRg.Cells(1)
Application.ScreenUpdating = False
For Each xCell In xRg
If xCell <> "" Then
xTStr = xTStr & xCell & " "
Else
xSaveToRg.Value = xTStr
Set xSaveToRg = xSaveToRg.Offset(1)
xTStr = ""
End If
Next
If xTStr <> "" Then xSaveToRg.Value = Left(xTStr, Len(xTStr) - 1)
Application.ScreenUpdating = True
End Sub
3. Затем нажмите клавишу F5, чтобы запустить этот код, и появится диалоговое окно, напоминающее вам выбрать диапазон данных, который вы хотите объединить, см. скриншот:
4. Затем нажмите ОК, и появится еще одно диалоговое окно, пожалуйста, выберите ячейку для вывода результата объединения, см. скриншот:
5. И затем нажмите кнопку ОК, и данные из списка столбцов будут объединены между пустыми ячейками, см. скриншот:
Объединение значений ячеек до тех пор, пока не будет найдена пустая ячейка в столбце с помощью Kutools для Excel
Если у вас есть Kutools для Excel, комбинируя его функции Преобразовать диапазон и Объединить, вы также сможете выполнить эту задачу максимально быстро. Утилита Преобразовать диапазон поможет вам преобразовать один столбец в диапазон, а функция Объединить поможет вам объединить преобразованный диапазон в столбец.
После установки Kutools для Excel выполните следующие действия:
1. Выберите ячейки, которые вы хотите объединить, и нажмите Kutools > Диапазон > Преобразовать диапазон, см. скриншот:
2. В диалоговом окне Преобразовать диапазон отметьте опцию Одна колонка в диапазон под Тип преобразования, а затем выберите Разделено пробелами под Строки на запись, см. скриншот:
3. Затем нажмите ОК, и появится диалоговое окно, которое напомнит вам выбрать ячейку для вывода результата, см. скриншот:
4. Нажмите ОК, и данные из одного столбца будут преобразованы в несколько строк и столбцов по пустой ячейке, см. скриншот:
5. Преобразованные данные находятся в нескольких столбцах, поэтому вам нужно объединить их в один столбец, пожалуйста, выберите диапазон данных и нажмите Kutools > Объединить и разделить > Объединить строки/столбцы/ячейки и сохранить значения, см. скриншот:
6. В диалоговом окне Объединить столбцы или строки выполните следующие параметры:
(1.) Выберите опцию Объединить столбцы из Объединить выбранный диапазон следующим образом;
(2.) Затем укажите разделитель, который вы хотите использовать для разделения объединенных значений;
(3.) Выберите, как вы хотите обработать объединенные ячейки. Вы можете оставить или удалить исходные данные, а также можете объединить объединенные ячейки. См. скриншот:
7. После завершения настройки нажмите кнопку ОК или Применить, ячейки будут объединены в один столбец с определенным разделителем, см. скриншот:
Kutools для Excel - Усильте Excel более чем 300 необходимыми инструментами. Наслаждайтесь постоянно бесплатными функциями ИИ! Получите прямо сейчас
Лучшие инструменты для повышения продуктивности в Office
Повысьте свои навыки работы в 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 и PowerPoint плюс Office Tab Pro
- Один установщик, одна лицензия — настройка занимает считанные минуты (MSI-совместимо)
- Совместная работа — максимальная эффективность между приложениями Office
- 30-дневная полнофункциональная пробная версия — без регистрации и кредитной карты
- Лучшее соотношение цены и качества — экономия по сравнению с покупкой отдельных надстроек