Как да сумирам стойностите на клетките в колона, докато се достигне празна клетка?
Ако имате списък с числа, който е попълнен с някои празни клетки, и сега трябва да сумирате числата отгоре или отдолу до празни клетки в този списък, за да получите следните резултати. Имате ли бързи или лесни начини за решаване на тази задача в 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 за приложения прозорец.
2. Щракнете Поставете > Модулии поставете следния код в Модули Window.
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 всички стойности на клетките над празните клетки са добавени, както е показано на следната екранна снимка:
Най-добрите инструменти за продуктивност в офиса
Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време. Щракнете тук, за да получите функцията, от която се нуждаете най-много...
Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна
- Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
- Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!