Как суммировать значения ячеек в столбце до достижения пустой ячейки?
Если у вас есть список чисел, содержащий некоторые пустые ячейки, и вам нужно просуммировать числа выше или ниже до пустых ячеек в этом списке, чтобы получить следующие результаты. Есть ли у вас какие-либо быстрые или простые способы выполнить эту задачу в Excel?
Суммирование значений ячеек сверху до пустой ячейки
Суммирование значений ячеек снизу до пустой ячейки
Суммирование значений ячеек снизу до пустых ячеек с помощью формулы массива
Суммирование значений ячеек сверху до пустых ячеек с помощью кода VBA
Суммирование значений ячеек снизу до пустых ячеек с помощью формулы массива
Чтобы суммировать значения ячеек снизу до пустых ячеек, вот формула массива, сделайте следующее:
1. Введите эту формулу в пустую ячейку рядом с вашим столбцом чисел, например, E1.
=IF(D1="",SUM(D1:INDEX(D1:$D$17,MATCH(TRUE,(D2:$D$17=""),0))),"") (D1, D2 — это первые две ячейки в вашем столбце, D17 — последняя пустая ячейка в столбце чисел).
2. Затем нажмите клавиши Ctrl + Shift + Enter вместе, после чего перетащите маркер заполнения вниз к ячейкам, которые вы хотите суммировать до пустых ячеек, как показано на скриншоте:
Суммирование значений ячеек сверху до пустых ячеек с помощью кода VBA
Если вам нужно суммировать значения ячеек сверху до пустых ячеек, следующий код VBA может помочь.
1. Удерживайте клавиши ALT + F11, чтобы открыть окно Microsoft Visual Basic for Applications.
2. Нажмите Insert > Module и вставьте следующий код в окно модуля.
Код VBA: Суммирование значений ячеек сверху до пустых ячеек:
Sub InsertTotals()
'Updateby Extendoffice
Dim xRg As Range
Dim i, j, StartRow, StartCol As Integer
Dim xTxt As String
On Error Resume Next
xTxt = ActiveWindow.RangeSelection.AddressLocal
Set xRg = Application.InputBox("please select the cells:", "Kutools for Excel", xTxt, , , , , 8)
If xRg Is Nothing Then Exit Sub
StartRow = xRg.Row
StartCol = xRg.Column
For i = StartCol To xRg.Columns.Count + StartCol - 1
For j = xRg.Row To xRg.Rows.Count + StartRow - 1
If Cells(j, i) = "" Then
Cells(j, i).Formula = "=SUM(" & Cells(StartRow, i).Address & ":" & Cells(j - 1, i).Address & ")"
StartRow = j + 1
End If
Next
StartRow = xRg.Row
Next
End Sub
3. Затем нажмите клавишу F5 для запуска этого кода, и появится диалоговое окно, напоминающее вам выбрать диапазон ячеек, которые вы хотите суммировать сверху до пустых ячеек, как показано на скриншоте:
4. Затем нажмите кнопку OK, все значения ячеек выше пустых ячеек будут сложены, как показано на следующем скриншоте:
Лучшие инструменты для повышения продуктивности в 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-дневная полнофункциональная пробная версия — без регистрации и кредитной карты
- Лучшее соотношение цены и качества — экономия по сравнению с покупкой отдельных надстроек