VBA SUMIF函数更改总和范围标准
我是VBA新手。我试图使用一个循环来执行sumif函数。我希望函数在运行时更改其sum_范围标准 我首先尝试使用以下代码:VBA SUMIF函数更改总和范围标准,vba,excel,Vba,Excel,我是VBA新手。我试图使用一个循环来执行sumif函数。我希望函数在运行时更改其sum_范围标准 我首先尝试使用以下代码: While cls <= num_cols While rws <= num_rows Cells(rws, cls).Value = "=SUMIF('BW YTD - Act&Plan'!$C:$C,A" & rws & ",'BW YTD - Act&Plan'!D:D)" rws =
While cls <= num_cols
While rws <= num_rows
Cells(rws, cls).Value = "=SUMIF('BW YTD - Act&Plan'!$C:$C,A" & rws & ",'BW YTD - Act&Plan'!D:D)"
rws = rws + 1
Wend
rws = 7
cls = cls + 1
Wend
而cls可以使用for循环和chr()
函数将整数转换为字母。(cls+64+2)
允许您对“B”说cls=2
,然后添加64得到66,这是“B”的ASCII字符。若要偏移,则如果cls=2
将给您“D”,只需添加额外的2。(当然,您可以将其组合为chr(cls+66)
,但我想演示一下为什么它是66。)
While cls
While rws <= num_rows
Cells(rws, 2).Value = "=SUMIF('BW YTD - Act&Plan'!$C:$C,A" & rws & ",'BW YTD - Act&Plan'!D:D)"
rws = rws + 1
Wend
rws = 7
While rws <= num_rows
Cells(rws, 3).Value = "=SUMIF('BW YTD - Act&Plan'!$C:$C,A" & rws & ",'BW YTD - Act&Plan'!E:E)"
rws = rws + 1
Wend
rws = 7
While rws <= num_rows
Cells(rws, 4).Value = "=SUMIF('BW YTD - Act&Plan'!$C:$C,A" & rws & ",'BW YTD - Act&Plan'!F:F)"
rws = rws + 1
Wend
rws = 7
While rws <= num_rows
Cells(rws, 5).Value = "=SUMIF('BW YTD - Act&Plan'!$C:$C,A" & rws & ",'BW YTD - Act&Plan'!G:G)"
rws = rws + 1
Wend
rws = 7
While cls <= num_cols
While rws <= num_rows
Cells(rws, cls).value = "=SUMIF('BW YTD - Act&Plan'!$C:$C,A" & rws & _
",'BW YTD - Act&Plan'!" & Chr(cls + 64 + 2) & ":" & Chr(cls + 64 + 2) & ")"
rws = rws + 1
Wend
rws = 7
Wend