我有一个带变量的子" porcen"像这样:
Dim porcen as Integer
porcen = Cells(1, 1).Value
经过一些计算,我有3个变量。 Var1,Var2和Var3取决于变量porcen。
ActiveCell.FormulaR1C1 = "=(IF(R[" & var1 & "]C="""","""",((COUNTIF(R[" & var1+ 1 + var2 & "]C:R[" & var1 + 1 & "]C,R[" & var1 & "]C))-(COUNTIF(R[" & var3 & "]C:R[-5]C,R[" & var1 & "]C)))/(" & var2 & ")))"
我不知道为什么如果更改单元格(1,1)中的值,公式的结果将保持不变。
我希望当我更改Cell(1,1)中的值时,结果也会改变。
答案 0 :(得分:3)
如果更改单元格(1,1)中的值,则必须重新计算 porcen,var1,var2,var3 以反映该更改。您可以使用事件宏自动执行此操作。
答案 1 :(得分:1)
看起来 porcen 是一个长字符串,甚至可能是从A1(又称为Cells(1,1))分配 Value 的变体。如果要将porcen锁定为A1,请将其声明为范围类型变量,并将其Set
声明为A1。
dim porcen as range
set porcen = cells(1, 1)
' do stuff with porcen.Value or porcen.Row or porcen.Column, etc just like a cell
' some say you don't have to do the next step before exiting the sub. I do it anyways.
set porcen = nothing