首先,我只想声明我需要使用 LateBinding,因为我的程序在不同机器上运行,具有不同版本的 excel。
我在一个模块中声明了一个 Public Sub,可以调用它来为 excel 应用程序创建对象。
'Declare Public Excel Variable to Call from one place and easy manipulation
Public xlApp As Object
Public wb As Object
Public wb2 As Object
Public ws As Object
Public ws2 As Object
Public Sub InitializeExcel()
'Create the Excel Objects
Set xlApp = CreateObject("Excel.Application")
End Sub
然后在我创建的每个使用 excel 应用程序的子例程中,我调用InitializeExcel并在每一端执行以下操作:
On Error Resume Next
xlApp.Quit
Set xlApp = Nothing
Set wb = Nothing
Set wb2 = Nothing
Set ws = Nothing
Set ws2 = Nothing
我现在的问题是:
我是否需要在每个需要 Excel 应用程序的子例程上调用InitializeExcel,或者我可以在应用程序启动时调用它一次吗?