2011-04-14 60 views
1

卸载我有以下VBA代码GetObject的不VBA项目窗口

Sub test2() 

Set xlobj = GetObject("C:\Users\osknows\Desktop\One of each\Jan_2011.xls") 
With xlobj 
    For Each wsobj In .Worksheets 
    Set rngobj = wsobj.UsedRange 
    arrArray = rngobj.Value 
    Next 
End With 

Erase arrArray 
Set rngobj = Nothing 
Set xlobj = Nothing 

End Sub 

的问题是,一旦这种运行和退出子的Jan_2011.xls细节仍然在VBA项目窗口。我希望这消失通过设置xlobj = Nothing

任何想法?

回答

2

线含有GetObject的做两件事情:它打开工作簿并使得xlobj到工作簿的引用。当xlobj设置为空时,引用将被清除,但工作簿仍处于打开状态。这可以通过添加行

xlobj.Close 

清空变量之前。