R1C1 公式结果给出给定变量的两倍
R1C1 Formula result gives twice the given variable
我想对一些数据进行规范化,并希望这个规范化的数据在数据变化时动态变化,这就是为什么我想将公式放在引用不同单元格的单元格中。但这与问题无关,因为即使是最简单的公式(如下所示)也不起作用。
Public Sub Test()
a = 15
Cells(a, 8).FormulaR1C1Local = "=Z(" & a & ")S7"
End Sub
单元格(15,8)中的公式为=$G30
。
我期望得到以下输出:=$G15
.
在许多论坛上,人们询问如何将变量放入 R1C1Formula
中,答案是:[" & a & "]
,但这会导致运行时错误 1004,因此我尝试了 ()
并且它没有给我任何警告,但结果不是我所期望的。
您需要了解 R1C1
相对和绝对引用的规则。
R15C7
是绝对的:第 15 行和第 7 列 = $G
.
R[15]C7
是相对行,意思是:公式所在的行加上第 15 行和第 7 列。如果公式在第 15 行,则 = $G30
.
RC7
表示:公式所在行第7列。如果公式在第15行,则=$G15
.
Public Sub Test()
a = 15
Cells(a, 8).FormulaR1C1 = "=R[" & a & "]C7" '$G30
Cells(a, 8).FormulaR1C1 = "=R" & a & "C7" '$G
Cells(a, 8).FormulaR1C1 = "=RC7" '$G15
End Sub
翻译成您的语言环境 Zeile/Spalte Z1S1
:
Public Sub Test()
a = 15
Cells(a, 8).FormulaR1C1Local = "=Z(" & a & ")S7" '$G30
Cells(a, 8).FormulaR1C1Local = "=Z" & a & "S7" '$G
Cells(a, 8).FormulaR1C1Local = "=ZS7" '$G15
End Sub
我想对一些数据进行规范化,并希望这个规范化的数据在数据变化时动态变化,这就是为什么我想将公式放在引用不同单元格的单元格中。但这与问题无关,因为即使是最简单的公式(如下所示)也不起作用。
Public Sub Test()
a = 15
Cells(a, 8).FormulaR1C1Local = "=Z(" & a & ")S7"
End Sub
单元格(15,8)中的公式为=$G30
。
我期望得到以下输出:=$G15
.
在许多论坛上,人们询问如何将变量放入 R1C1Formula
中,答案是:[" & a & "]
,但这会导致运行时错误 1004,因此我尝试了 ()
并且它没有给我任何警告,但结果不是我所期望的。
您需要了解 R1C1
相对和绝对引用的规则。
R15C7
是绝对的:第 15 行和第 7 列 = $G
.
R[15]C7
是相对行,意思是:公式所在的行加上第 15 行和第 7 列。如果公式在第 15 行,则 = $G30
.
RC7
表示:公式所在行第7列。如果公式在第15行,则=$G15
.
Public Sub Test()
a = 15
Cells(a, 8).FormulaR1C1 = "=R[" & a & "]C7" '$G30
Cells(a, 8).FormulaR1C1 = "=R" & a & "C7" '$G
Cells(a, 8).FormulaR1C1 = "=RC7" '$G15
End Sub
翻译成您的语言环境 Zeile/Spalte Z1S1
:
Public Sub Test()
a = 15
Cells(a, 8).FormulaR1C1Local = "=Z(" & a & ")S7" '$G30
Cells(a, 8).FormulaR1C1Local = "=Z" & a & "S7" '$G
Cells(a, 8).FormulaR1C1Local = "=ZS7" '$G15
End Sub