如何在VBA中添加类似“IF(A1 =”“,”“,A1)的公式

时间:2015-03-06 21:07:53

标签: excel-vba vba excel

我正在尝试使用

在VBA中添加IF(A1="","",A1)
Activesheet.Range("A1").Formula = "IF(A1="","",A1)"

如果有人知道在VBA中使用此公式,请提供帮助。

2 个答案:

答案 0 :(得分:1)

为引号使用不同的字符,例如"?",然后用引号替换该字符。

dim strFormula as string

formula = "=IF(A1=??,??,A1)"
formula = Replace(formula,"?",Chr(34))

Activesheet.Range("A1").Formula = strFormula

答案 1 :(得分:0)

我认为这是你输入公式时遇到问题的引号?构造字符串时,您可以使用双引号在字符串中输入一个字符串,如下所示:

Activesheet.Range("A1").Formula = "=IF(A1="""","""",A1)"

或者您可以使用Chr-method构建插入引号的字符串,如下所示:

Activesheet.Range("A1").Formula = "=IF(A1=" & Chr(34) & Chr(34) & "," & Chr(34) & Chr(34) & ",A1)"

有关Chr - 数字对应于哪些字符的概述,您可以例如看看here