我试图总结 Excel VBA 中的一列,但是因为有空格,我得到 0 作为总和。
Dim rExternalTotal As Range , dExternalTotal as Double
Set rExternalTotal = Range(rReportData.Offset(0, 0), rReportData.Offset(261, 0).End(xlUp))
dExternalTotal = Application.WorksheetFunction.Sum(rExternalTotal)
Run Code Online (Sandbox Code Playgroud)
dExternalTotal 始终为零。我无法删除工作表上的空格。任何人都可以建议一种以编程方式进行求和的方法吗?
我认为您误解了错误的来源;rExternalTotal 似乎等于单个单元格。rReportData.offset(0,0) 等于 rReportData
rReportData.offset(261,0).end(xlUp) 也可能等于 rReportData,因为您偏移 261 行,然后使用 .end(xlUp) 函数选择连续数据范围的顶部。
如果您只对一列的总和感兴趣,则可以参考整列:
dExternalTotal = Application.WorksheetFunction.Sum(columns("A:A"))
Run Code Online (Sandbox Code Playgroud)
或者
dExternalTotal = Application.WorksheetFunction.Sum(columns((rReportData.column))
Run Code Online (Sandbox Code Playgroud)
工作表函数 sum 将正确忽略空格。
让我知道这是否有帮助!
| 归档时间: |
|
| 查看次数: |
124451 次 |
| 最近记录: |