我是新手,请帮助我解决关于为公式编码vba的问题。 = IFERROR(AP24728< 0,(NETWORKDAYS(B24728,AQ24728,' N:#Abe \ Report PU \ Desember [Report PU 05 Des 2016.xlsx] Holidays'!$ A $ 2:$ A $ 69)) -1)
谢谢
答案 0 :(得分:2)
基于你对“你想做什么?”的答案。 “我希望将此公式放入VBA”,一些示例代码可能是:
Dim result As Variant
result = Evaluate("IFERROR(AP24728<0,(NETWORKDAYS(B24728,AQ24728,'N:#Abe\Report PU\Desember[Report PU 05 Des 2016.xlsx]Holidays'!$A$2:$A$69))-1)")
如果您在问题中提供其他详细信息,我可以扩展此答案,或者其他人可能会提出更好的方法。
答案 1 :(得分:0)
要在VBA中使用Excel公式,您有两种选择:您可以{@ 1}}函数字符串,如@ YowE3K这里给出的示例,或者您也可以使用Evaluate
方法执行大多数Excel功能。如果你想像你的例子建议那样做一个固定的公式并在VBA中返回结果,那么WorksheetFunction
方法是最好的,Evaluate
方法允许你用VB语言指定参数,(在我看来) )对于动态函数更好(如果你多次尝试这样做,可以在速度方面进行权衡,例如迭代一系列单元格等等)但是,因为你有另一个函数嵌入WorksheetFunction
,您需要在IfError
内嵌入另一个WorksheetFunction
,如下所示:
IfError
但是,从您的帖子中不清楚您想要做什么。这里的关键是提供一些关于你要整体做什么的进一步信息 - 即什么是大图片&#39;你想要实现的目标?你只想测试一个单元格中的值吗?这是你需要为多个细胞重复的东西吗?为什么你需要在VBA中执行此操作,何时可以更轻松地在工作表中使用公式?