Excel 如何在VBA中用变量行填充公式列
我希望使用一个for循环,用一个带有可变行的公式填充一个特定的列。我总是遇到一系列全球性的失败问题。如果有人能帮我,那太好了,谢谢Excel 如何在VBA中用变量行填充公式列,excel,vba,loops,excel-formula,Excel,Vba,Loops,Excel Formula,我希望使用一个for循环,用一个带有可变行的公式填充一个特定的列。我总是遇到一系列全球性的失败问题。如果有人能帮我,那太好了,谢谢 For i = 3 To lastrow With Sheets(1) .Range("H:" & i).Formula = "=SUM(C" & i & ";E" & i & ";G" & i &")" End With Next i 删除“H”后的冒号(H3而不是H:3是
For i = 3 To lastrow
With Sheets(1)
.Range("H:" & i).Formula = "=SUM(C" & i & ";E" & i & ";G" & i &")"
End With
Next i
- 删除“H”后的冒号(H3而不是H:3是正确的语法)
- 在VBA中,公式使用逗号而不是分号,无论您的本地名称是什么
设置(或使用
)FormulaLocal
- 你可以避免循环
您可以使用
.FillDown
来完成您需要的操作,并避免循环
,这会占用更多的时间和CPU
Range("H3").Value="=SUM(C3,E3,G3)"
Range("H3:H" & lastrow).FillDown
输出<强>之前<强>
之后
非常感谢您的回答!正是我想要的。我没想到在第4行之后,它会按照匹配的行填充。谢谢你的回答。如果我理解正确,.filldown相当于双击单元格右下角的正方形?@Skepie当然可以,我想这是做你需要的事情的正确方法
Range("H3").Value="=SUM(C3,E3,G3)"
Range("H3:H" & lastrow).FillDown