我需要使用变量引用单元格位置,这里是代码:
Dim jj As Integer
jj = 1
Do While jj <= x
if Cells(jj, 2) = "Some Criteria" Then Cells(jj, 3).Formula = "=Cells(jj,1)^2"
jj = jj + 1
Else
jj = jj + 1
End If
Loop
问题是单元格C1中的值(即当jj = 1时单元格(jj,3))字面上读取= Cells(jj,1)^ 2导致错误,因为VBA外部的excel无法识别单元格(jj,3)作为公式或任何类型的值。
我需要循环向下移动的行。反正有没有做到这一点,并将一个公式插入一个单元格,该单元格引用一个变量作为行的单元格位置?
谢谢!一切都有帮助!
答案 0 :(得分:2)
使用R1C1
表示法:
if Cells(jj, 2) = "Some Criteria" Then Cells(jj, 3).FormulaR1C1 = "=RC1^2"
或者您可以计算A1
符号公式,例如
if Cells(jj, 2) = "Some Criteria" Then Cells(jj, 3).Formula = "=$A" & jj & "^2"