Excel 进程未关闭 VBA
Excel process don´t close VBA
我看到我的问题弹出了好几次,但是 none 的答案对我有用。所以让我向您介绍我的问题:
我 运行 来自 Word 文档的 Makro(只有一个 Sub)。作为帮助,我将打开一个新的 Excel 文件,在其中格式化剪贴板中的内容,然后将其带回 Word 文件。
但是全部搞定之后,谁也看不到,我用了Excel.
但它不会像我希望的那样作为一个过程关闭。我尝试了我看到的所有方法,但似乎没有任何效果:
Application.ScreenUpdating = False
' declare Excel Objects
Dim appExcel As Excel.Application
Dim wbCalculator As Workbook
Dim wsCalculator As Worksheet
' initialize Excel Objects
Set appExcel = New Excel.Application
Set wbCalculator = Excel.Workbooks.Add
Set wsCalculator = wbCalculator.Sheets(1)
...
"My totally efficient and beautiful Code"
...
' Close Excel
wbCalculator.Saved = True
Set wsCalculator = Nothing
wbCalculator.Close False
Set wbCalculator = Nothing
appExcel.Quit
Set appExcel = Nothing
Application.ScreenUpdating = True
我希望你能帮我解决这个问题:)
此处要突出显示两行代码:
Set appExcel = New Excel.Application
Set wbCalculator = Excel.Workbooks.Add
在这里您可以看到您创建了一个名为 appExcel
的对象,目的是使用该对象。但是,您随后只需直接引用 Excel
对象模型 而不是 appExcel
。这意味着您现在在同一进程下有一个额外的 Excel 实例,您再也不会处理或关闭它。尝试将其更改为:
Set appExcel = New Excel.Application
Set wbCalculator = appExcel.Workbooks.Add
我看到我的问题弹出了好几次,但是 none 的答案对我有用。所以让我向您介绍我的问题:
我 运行 来自 Word 文档的 Makro(只有一个 Sub)。作为帮助,我将打开一个新的 Excel 文件,在其中格式化剪贴板中的内容,然后将其带回 Word 文件。
但是全部搞定之后,谁也看不到,我用了Excel.
但它不会像我希望的那样作为一个过程关闭。我尝试了我看到的所有方法,但似乎没有任何效果:
Application.ScreenUpdating = False
' declare Excel Objects
Dim appExcel As Excel.Application
Dim wbCalculator As Workbook
Dim wsCalculator As Worksheet
' initialize Excel Objects
Set appExcel = New Excel.Application
Set wbCalculator = Excel.Workbooks.Add
Set wsCalculator = wbCalculator.Sheets(1)
...
"My totally efficient and beautiful Code"
...
' Close Excel
wbCalculator.Saved = True
Set wsCalculator = Nothing
wbCalculator.Close False
Set wbCalculator = Nothing
appExcel.Quit
Set appExcel = Nothing
Application.ScreenUpdating = True
我希望你能帮我解决这个问题:)
此处要突出显示两行代码:
Set appExcel = New Excel.Application
Set wbCalculator = Excel.Workbooks.Add
在这里您可以看到您创建了一个名为 appExcel
的对象,目的是使用该对象。但是,您随后只需直接引用 Excel
对象模型 而不是 appExcel
。这意味着您现在在同一进程下有一个额外的 Excel 实例,您再也不会处理或关闭它。尝试将其更改为:
Set appExcel = New Excel.Application
Set wbCalculator = appExcel.Workbooks.Add