2012-04-13 139 views
9

昨天我試着將下面的代碼放到程序中。 VBA稱錯誤。我認爲這是因爲公式中的雙引號。我搜索了一下,發現的所有結果都給出了公式的基礎,但沒有人解釋如何繞過內部引號。Excel(2007)VBA - 。帶有引號的公式

(有一個使用此聲明之前,Pivot是一個工作表名稱)

.Range("A2").Formula = "=IF(Pivot!A5="",A1,Pivot!A5)" 

任何幫助深表感謝。謝謝!

回答

21

如有任何疑問,錄製宏,如果它允許:)

試試這個

.Range("A2").Formula = "=IF(Pivot!A5="""",A1,Pivot!A5)" 
+0

有關宏錄製好一點。此外,你的代碼工作,並且是所有答案中最乾淨的。謝謝。 – Graphth 2012-04-19 15:38:56

1

則可能需要這樣做:

.Range("A2").Formula = "=IF(Pivot!A5="& """" & """" & ",A1,Pivot!A5)" 
2

使用Chr(34)代替雙-引用。

所以你的情況:

.Range("A2").Formula = "=IF(Pivot!A5=" & Chr(34) & Chr(34) & ",A1,Pivot!A5)"