Excel 要在公式中放置“”的宏

Excel 要在公式中放置“”的宏,excel,vlookup,vba,Excel,Vlookup,Vba,我正在尝试创建一个宏,它将替换vlookup单元格中的公式,以包含ifisna。。。参数,替换为vlookupa1,b1:c2:,2,假为 =ifisnavlookupa1,b1:c2:,2,false,,vlookupa1,b1:c2:,2,false 我遇到的问题是让宏放置组件,因为宏解释为nothing,就像它将X解释为X而不是X一样。我尝试将其设置为null和false等。但这会在单元格中放置0,这对文本列表不起作用。有什么想法吗?我的宏如下所示: Sub vlookuperror()

我正在尝试创建一个宏,它将替换vlookup单元格中的公式,以包含ifisna。。。参数,替换为vlookupa1,b1:c2:,2,假为 =ifisnavlookupa1,b1:c2:,2,false,,vlookupa1,b1:c2:,2,false

我遇到的问题是让宏放置组件,因为宏解释为nothing,就像它将X解释为X而不是X一样。我尝试将其设置为null和false等。但这会在单元格中放置0,这对文本列表不起作用。有什么想法吗?我的宏如下所示:

Sub vlookuperror()
Dim Orig_formula As String
Dim new_formula
Dim noequal
dim quote

quote=""
Orig_formula = ActiveCell.Formula
noequal = Mid(Orig_formula, 2)
new_formula = "=if(isna(" & noequal & ")," & quote & "," & noequal & ")"
ActiveCell.Formula = new_formula

End Sub
试试这个:

Sub vlookuperror()
Dim Orig_formula As String
Dim new_formula
Dim noequal
dim quote

quote=""""""
Orig_formula = ActiveCell.Formula
noequal = Mid(Orig_formula, 2)
new_formula = "=if(isna(" & noequal & ")," & quote & "," & noequal & ")"
ActiveCell.Formula = new_formula

End Sub

或者你应该能够将两个Chr$34连接在一起-并替换它-见上面评论中的Frank N.Stein的建议。-a la:quote=Chr$34&Chr$34

使用quote=Chr$34代替。34是ASCII码的工作完美,只需做两次就可以得到双引号-谢谢!我没有得到你需要它两次;无论如何,是的:quote=Chr$34&Chr$34。