Excel VBAvariables值等于公式
我努力在VBA中分配variables值。 我知道如何设置myVar等于这样一个ActiveCell.Value:
ActiveCell.FormulaR1C1 = "=SUM(RC[1]:RC[7])" myVar = ActiveCell.Value MsgBox (myVar)
是否有可能设置myVar等于公式,并跳过ActiveCell.Value行。 我试过这个,但是不起作用。
myVar = "=SUM(RC[1]:RC[7])"
谢谢你的帮助。
我不知道什么是你的目标的更广泛的范围,因此我提出可能有用的想法。 但是,它从FormulaR1C1
相对引用切换为Range.Offset()
技术的相对引用。
myVar = WorksheetFunction.Sum(Range(ActiveCell.Offset(0, 1), ActiveCell.Offset(0, 7))) MsgBox myVar
是的你可以。 首先设置myVar
variables,然后将其应用于一个范围(ActiveCell或任何其他Range对象)。
Dim myVar as String Dim r as Excel.Range Set r = ActiveCell myVar = "=SUM(RC[1]:RC[7])" r.FormulaR1C1 = myVar
如果你不需要你的公式与活动单元格相关,你也可以使用short [..]
来评估一个语句,例如:
MsgBox [SUM(B1:B7)]