17

我昨天尝试将以下代码放入程序中。VBA 调用错误。我认为这是因为公式中的双引号。我用谷歌搜索,我发现的所有结果都只是给出了输入公式的基础,但没有一个解释如何绕过里面的引号。

(在此之前有一个With语句,Pivot是工作表名称)

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

任何帮助深表感谢。谢谢!

4

3 回答 3

34

如有疑问,请在允许的情况下录制宏:)

试试这个

.Range("A2").Formula = "=IF(Pivot!A5="""",A1,Pivot!A5)" 
于 2012-04-13T14:15:13.210 回答
7

Chr(34)代替双引号使用。

所以在你的情况下:

.Range("A2").Formula = "=IF(Pivot!A5=" & Chr(34) & Chr(34) & ",A1,Pivot!A5)"
于 2012-04-13T14:39:28.333 回答
1

你可能需要这样做:

.Range("A2").Formula = "=IF(Pivot!A5="& """" & """" & ",A1,Pivot!A5)" 
于 2012-04-13T14:25:31.050 回答