繁体   English   中英

VBA application.run,MAc Excel 2016

[英]VBA application.run, MAc excel 2016

再次感谢您的帮助。

我在使用application.run时遇到问题,它没有报告任何错误,但是代码崩溃了。 该项目很大,application.run是我发现将函数作为参数传递的最简单方法...
我将问题简化为:

MsgBox Application.Run("Application.WorksheetFunction.Var_S", ThisWorkbook.Worksheets("Data").Range("B3:B974"))  

这被简化了,但是我什至无法做到这一点。

但是,以下给出了预期的结果,因此问题出在application.run的使用上,而不是var函数本身的使用上。

MsgBox Application.WorksheetFunction.Var_S(ThisWorkbook.Worksheets("Data").Range("B3:B974"))  

因此,我知道问题出在我使用application.run的方式上。 如我所说,没有错误报告,但是代码停止了。 什么都不会返回,并且application.run之后的任何内容都不会执行。
我的猜测是我没有正确的语法,但是我找不到很多与此有关的文档。 根据我的阅读,这应该是正确的语法。

谢谢

函数Var_S返回一个值。 您没有收到错误,因为它运行正常。 在示例2中,您要使用返回值告诉它要做什么。 示例1中的响应应该怎么做? 如果您只想进一步举例说明,而不是Var_S函数,请尝试使用Now()函数,它会返回当前日期: Application.Run "now()" ...再次,它可以正常运行该函数。 Application.Run 运行一个函数,而MsgBox 显示数据。

可以使用Application代替Application.Run

MsgBox CallByName(Application.WorksheetFunction, "Var_S", VbMethod, _
                  ThisWorkbook.Worksheets("Data").Range("B3:B974"))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM