【问题标题】:Excel (2007) VBA - .Formula with quotes in itExcel (2007) VBA - .Formula 中带引号
【发布时间】:2012-04-25 21:54:53
【问题描述】:

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

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

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

非常感谢任何帮助。谢谢!

【问题讨论】:

    标签: excel excel-2007 vba


    【解决方案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)"
    

    【讨论】:

    • 此解决方案将比其他任何提交的解决方案更有效。
    【解决方案3】:

    您可能需要这样做:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-31
      • 2017-11-04
      • 1970-01-01
      • 1970-01-01
      • 2013-06-30
      • 2010-11-13
      相关资源
      最近更新 更多