【问题标题】:Setting cell formula which includes "text constants" in Excel cell by VBA通过VBA在Excel单元格中设置包含“文本常量”的单元格公式
【发布时间】:2014-05-20 21:33:05
【问题描述】:

在实际的单元格公式中我可以手动设置以下公式。 =IF(MONTH(A15)

我正在尝试使用以下代码通过 vba 设置此公式。 ActiveCell.formulaR1C1 = "=IF(MONTH(A15)

VBA 编译器显示编译错误:预期:语句结束。这似乎是感叹号有问题。

现在有人如何在 vba 代码设置的单元格公式中包含文本常量吗?

【问题讨论】:

标签: vba excel


【解决方案1】:

您需要在字符串中使用双引号,如下所示:

ActiveCell.formulaR1C1 = "=IF(MONTH(A15)<7,""FY ""&YEAR(A15)-1&""/""&RIGHT(YEAR(A15),2),""FY ""&YEAR(A15)&""/""&RIGHT(YEAR(A15)+1,2))"

【讨论】:

    【解决方案2】:

    如果您以 R1C1 格式传递引用,则仅使用 FormulaR1C1,但您使用的是 A1 格式。如果您愿意,也可以缩短该公式:

    ActiveCell.Formula = "=""FY ""&YEAR(A15)-(MONTH(A15)<7)&""/""&RIGHT(YEAR(A15)+(MONTH(A15)>=7),2)"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-03-29
      • 1970-01-01
      • 1970-01-01
      • 2013-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多