VBA – 使用替代和正确的function相结合

我可以在表格层面上使用这个…

=SUBSTITUTE(PROPER(SUBSTITUTE(A1,"'", "qx")), "qx", "'") 

我可以在模块级使用这个

 ActiveCell.Value = Application.WorksheetFunction.Proper(ActiveCell.Value) 

但我似乎无法得到这个模块级别的工作…

 ActiveCell.Value = Application.WorksheetFunction.Substitute(Proper(Substitute(ActiveCell.Value, "'", "qx")), "qx", "'") 

我收到“子或function未定义”错误。

我一直在为此苦苦挣扎,以至于我失去了我尝试过的所有不同变种的踪迹。 我真的可以用一些新鲜的眼睛和一些function嵌套的知识。 这真让我抓狂。

(顺便说一句,这是为了改变现有的单元格值为正确的情况,以及修复大写任何字母后面的撇号适当的函数的怪癖)

你必须引用Application.WorksheetFunction对象每次调用一个,因为它不知道否则方法。

 ActiveCell.Value = Application.WorksheetFunction.Substitute(Application.WorksheetFunction.Proper(Application.WorksheetFunction.Substitute(ActiveCell.Value, "'", "qx")), "qx", "'")