我有更大的计划,我的VBA互动,但我需要开始小的第一。我只是试图打开一个现有的Minitab项目,计数现有的工作表,并显示带有计数的消息框。我在关于Minitab的15个帖子以及文件中寻找答案,但我一直找不到解决办法。
Sub GetModel()
Dim MtbApp As Mtb.Application
Dim MtbProj As Mtb.Project
Dim MtbSheets As Mtb.Worksheets
Set MtbApp = New Mtb.Application
Set MtbProj = MtbApp.ActiveProject
Set MtbSheets = MtbProj.Worksheets
MtbApp.UserInterface.Visible = False
MtbApp.UserInterface.DisplayAlerts = False
MtbApp.Open "P:\Tools\Models\MTB Model Test\NSS_Model_Test.MPJ"
MsgBox "There are " & MtbSheets.Count & " worksheets in the project."
MtbApp.Quit
End Sub当我运行上面的代码时,会打开适当的项目,打开一个消息框,显示项目中有一个工作表,然后项目关闭。这个特别的项目有8张纸。另外,由于我之前所做的研究,我决定检查任务管理器,看看minitab应用程序是否真的关闭了。即使代码提示退出,它似乎仍在后台使用系统资源继续运行。
发布于 2015-07-31 23:34:52
由于我初始化变量的顺序,这个特定的示例被错误了。下面的代码按预期运行。
Sub GetModel()
Dim MtbApp As Mtb.Application
Dim MtbProj As Mtb.Project
Dim MtbSheets As Mtb.Worksheets
Set MtbApp = New Mtb.Application
MtbApp.UserInterface.Visible = False
MtbApp.UserInterface.DisplayAlerts = False
MtbApp.Open "P:\Tools\Models\MTB Model Test\NSS_Model_Test.MPJ"
Set MtbProj = MtbApp.ActiveProject
Set MtbSheets = MtbProj.Worksheets
MsgBox "There are " & MtbSheets.Count & " worksheets in the project."
MtbApp.Quit
End Subhttps://stackoverflow.com/questions/31750362
复制相似问题