VBA - 设置包含引号作为单元格值的Excel公式

时间:2017-02-21 12:56:13

标签: excel vba excel-vba

我正在尝试让我的VB脚本将Excel公式输入到单元格中。不幸的是到目前为止我没有运气。

    Sheets("ABC").Select
Range("B2").Value = "=IF(Mat_Location!F2=0;"";Mat_Location!F2)"

经过一些谷歌搜索并在这个网站上搜索我认为这是因为引号,所以我尝试将引号更改为双引号。

    Sheets("ABC").Select
Range("B2").Value = "=IF(Mat_Location!F2=0;"""";Mat_Location!F2)"

这也没有帮助。

感谢任何帮助。提前谢谢。

1 个答案:

答案 0 :(得分:1)

将您的多个"替换为Chr(34),以这种方式调试更容易。

此外,首先不需要Select表单。

Sheets("ABC").Range("B2").FormulaLocal = "=IF(Mat_Location!F2=0;" & Chr(34) & Chr(34) & ";Mat_Location!F2)"

注意:您的Excel的区域设置似乎是;作为公式中的分隔符。默认设置为,,因此对于我的Excel设置(也可能是您的设置),可能是:

Sheets("ABC").Range("B2").Formula = "=IF(Mat_Location!F2=0," & Chr(34) & Chr(34) & ",Mat_Location!F2)"