繁体   English   中英

Excel VBA通​​过匹配的单元格行通过公式求和

[英]Excel VBA doing a sum based on a matched cells row via formula

我试图通过公式对基于匹配单元格的一组列求和...

基本上,要获取我正在使用的行: =MATCH(A3,SHEETNAME!$A$1:$A$100,0)

所以我尝试的是:

=IF(MATCH(A3,SHEETNAME!$A$1:$A$100,0), SUM(SHEETNAME!L&MATCH(A3,SHEETNAME!$A$1:$A$100,0)&:U&MATCH(A3,SHEETNAME!$A$1:$A$100,0)), "")

我正在尝试使其与匹配行中的L:U列相加...我做错了什么?

作为工作表公式:

=IF(COUNTIF(SHEETNAME!$A$1:$A$100, A3), SUM(INDEX(SHEETNAME!L1:U100, MATCH(A3, SHEETNAME!$A$1:$A$100, 0), )), "")

作为UDF功能中的VBA代码:

Function udf_Sum_Matching_Row(rVAL As Range)
    Dim rw As Long, dTTL As Double
    With Sheets("SHEETNAME")
        If CBool(Application.CountIf(.Columns(1), rVAL)) Then
             rw = Application.Match(rVAL, .Columns(1), 0)
             dTTL = Application.Sum(.Cells(rw, 12).Resize(1, 10))
        End If
    End With
    udf_Sum_Matching_Row = dTTL
End Function

按照您的示例在工作表上的语法:

=udf_Sum_Matching_Row(A3)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM