我有一列,它将包含几行数据,然后是一个空白单元格。
我需要一种方法来向上计数列中的行,直到出现空白单元格并使用VBA
. 有任何想法吗?
我不是 100% 确定你在问什么。您说“对数字求和”,但没有指定要求和的数字是计算的行数还是要对找到的单元格的值求和。
-编辑-
试一试:这将从底行开始向上计数,直到找到一个空白单元格一旦找到一个空白单元格,它将汇总最后一个空白单元格和当前空白单元格之间的单元格。
-编辑2-
在列标题下的行中添加了插入,因此第一行也被求和。
Sub CountUp()
Dim TotalRows As Long
Dim TotalCols As Long
Dim Col As Long
Dim i As Long
Dim n As Long
Rows(2).Insert Shift:=xlDown
TotalRows = ActiveSheet.UsedRange.Rows.Count
TotalCols = ActiveSheet.UsedRange.Columns.Count
'Assumes Data you want to sum is in the first column
Col = 1
Cells(TotalRows, Col).Select
For i = TotalRows To 1 Step -1
If Cells(i, Col).Value <> "" Then
n = n + 1
Else
Cells(i, Col).Formula = "=SUM(" & Cells(i + 1, Col).Address(False, False) & ":" & Cells(i + n, Col).Address(False, False) & ")"
n = 0
End If
Next
End Sub
假设列 F 为列并且它有编号。试试下面的代码。
Sub sumAndcount()
Dim recCount As Long
Dim recSum As Long
Range("A65000").Value = "=COUNT(F:F)"
recCount = Range("A65000").Value
Range("A65000").Value = "=SUM(F:F)"
recCount = Range("A65000").Value
End Sub