簡體   English   中英

在另一列中過濾后的列值總和 excel vba

[英]Sum of column's values after filtering in another column excel vba

我在字段 20,9 和 15 上設置了過濾器

With dsWrksheet.Range("T1")
    .AutoFilter Field:=20, Criteria1:="=*" & Id & "*"
    .AutoFilter Field:=9, Criteria1:="Controls Solutions"
    .AutoFilter Field:=15, Criteria1:="India"
End With

設置過濾器后,我正在計算 AB 列可見單元格中的值的總和,如下所示

Set myRange = dsWrksheet.Range("AB1:AB" & dsWrksheet.Range("AB" & Rows.count).End(xlUp).Row)
voucherValInd = WorksheetFunction.Sum(myRange.SpecialCells(xlCellTypeVisible))

當單元格為空時出現問題,我得到錯誤的值作為總和。

幫助表示贊賞。

我認為WorksheetFunction.Subtotal在這里更容易。 109表示SUM ,不包括隱藏行,詳見此處 另外,您可以只在整個列上使用它,而不是查找最后一行:

voucherValInd = WorksheetFunction.Subtotal(109, dsWrksheet.Range("AB:AB"))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM