使用VBA插入公式 - 带空格的IF语句

时间:2017-05-23 07:24:17

标签: excel vba excel-formula

我正在使用VBA将公式输入到一系列单元格中。公式是:

If VAT = "YES" Then
Range("G24:G47").Formula = "=IF(F24="","",G24*0.14)"
ElseIf VAT = "NO" Then
Range("G24:G47").Formula = "=IF(F24="","",G24*0)"
Else
'Do Nothing
End If

基本上它检查变量VAT以查看它是YES还是NO然后插入相应的公式。问题是两个选项的公式输出如下(我使用VAT = YES作为示例):=IF(F24=",",G24*0.14)。问题是一个"从逻辑步骤和if真部分消失。任何有关这方面的帮助将非常感激。

2 个答案:

答案 0 :(得分:2)

您需要将公式中使用的所有双引号加倍。例如“”会变成“”“”并且如果你在公式中有“是”之类的东西,它将变成“”是“”。

Range("G24:G47").Formula = "=IF(F24="""","""",G24*0.14)"

答案 1 :(得分:0)

你可以直接忽略这样的NO:

If VAT = "YES" Then
Range("G24:G47").Formula = "=IF(F24="","",G24*0.14)"
Else
Range("G24:G47").Formula = "=IF(F24="","",G24*0)"
End If

否则

If VAT = "YES" Then
Range("G24:G47").Formula = "=IF(F24="","",G24*0.14)"
ElseIf VAT = "NO" Then
Range("G24:G47").Formula = "=IF(F24="","",G24*0)"
Else
 Exit Sub
End If

无论您目前处于什么类型的“代码块”,您都会退出“退出”,因此“退出子”,“退出功能”等等。