如何使我的 SumIf 函数 运行 一直到 VBA 代码上的数据的最后范围
How do I make my SumIf Function run through until last range of my data on VBA Code
这是我的 SumIf 公式
=SUMIF($C$26:$C$43,$C$6,D26:D43)
C6 是固定的,所以我将其锁定,这样单元格就不会 运行 如果我拖动它
问题是范围和求和范围
范围(C26)和总和范围(D26)的起始行列始终相同但最后一行不相同,因为我的数据量并不总是相同(有时直到 100 有时更少)
如何更改 SumIf 的 VBA 公式以匹配完全相同数量的数据?
这是我的 SumIf VBA 代码(从记录中得到它)
"=SUMIF(R26C3:R43C3,R6C3,R[20]C:R[37]C)"
请尝试下一种方法。该代码必须确定 C:C 中的最后一个单元格,然后使用它。有更多的可能性来做到这一点。如以下代码,或者直接在字符串公式中使用,替换(现有的)43 ("=SUMIF($C:$C$" & lastR ...
:
Sub formulaUntilLast()
Dim lastR As Long, rngC As Range, RngD As Range, strFormula As String
lastR = ActiveSheet.Range("C" & rows.count).End(xlUp).row
Set rngC = Range("C26:C" & lastR)
Set RngD = Range("D26:D" & lastR)
strFormula = "=SUMIF(" & rngC.Address & ",$C," & rngC.Address & ")"
Debug.Print strFormula
End Sub
这是我的 SumIf 公式
=SUMIF($C$26:$C$43,$C$6,D26:D43)
C6 是固定的,所以我将其锁定,这样单元格就不会 运行 如果我拖动它
问题是范围和求和范围
范围(C26)和总和范围(D26)的起始行列始终相同但最后一行不相同,因为我的数据量并不总是相同(有时直到 100 有时更少)
如何更改 SumIf 的 VBA 公式以匹配完全相同数量的数据?
这是我的 SumIf VBA 代码(从记录中得到它)
"=SUMIF(R26C3:R43C3,R6C3,R[20]C:R[37]C)"
请尝试下一种方法。该代码必须确定 C:C 中的最后一个单元格,然后使用它。有更多的可能性来做到这一点。如以下代码,或者直接在字符串公式中使用,替换(现有的)43 ("=SUMIF($C:$C$" & lastR ...
:
Sub formulaUntilLast()
Dim lastR As Long, rngC As Range, RngD As Range, strFormula As String
lastR = ActiveSheet.Range("C" & rows.count).End(xlUp).row
Set rngC = Range("C26:C" & lastR)
Set RngD = Range("D26:D" & lastR)
strFormula = "=SUMIF(" & rngC.Address & ",$C," & rngC.Address & ")"
Debug.Print strFormula
End Sub