2016-12-15 23 views
0

我已經使用以下解決方案從宏自動填充公式。爲什麼我的自動填充公式是被修改的宏?

enter link description here

要求下面的行的代碼:

Sub FillData() 
Dim rng1 As Range 
Set rng1 = Range([a1], [a1].End(xlDown)) 
If Not (rng1.Rows.Count = Rows.Count And Len([a1].Value) = 0) Then rng1.Offset(0, 3).FormulaR1C1 = "=RC2" 
End Sub 

使用這個例子中我創建了下面的代碼塊:

If Not (rng1.Rows.Count = Rows.Count And Len([a1].Value) = 0) Then rng1.Offset(1, 4).FormulaR1C1 = "=VLOOKUP(RC1,'My Excel Tab name'!A:D,4,FALSE)" 

然而其在細胞中最終的式在A:D中有D的括號,並且看起來像這樣:

=VLOOKUP($A3,'SubstationsPJM-New'!A:(D),4,FALSE) 

我在這裏做錯了什麼? 謝謝

回答

1

你沒有在你的公式中使用R1C1引用。

您需要具有相當的R1C1更換'My Excel Tab name'!A:D這將是'My Excel Tab name'!C1:C4(列1〜4),因此您的公式應該是這樣的:

"=VLOOKUP(RC1,'My Excel Tab name'!C1:C4,4,FALSE)" 
+0

感謝,這是它 – JensW

+0

沒問題,如果你是對此答案表示滿意,您可以將其標記爲正確,以表明問題已被正確回答。 – Jordan