Excel 在不同工作簿之间切换而不使用。激活
我想在我的代码中引用不同的工作簿,我使用了以下代码:Excel 在不同工作簿之间切换而不使用。激活,excel,vba,Excel,Vba,我想在我的代码中引用不同的工作簿,我使用了以下代码: Dim Basicwb As Excel.Workbook Dim Basic As Excel.Application Set Basic = New Excel.Application Set Basicwb = Basic.Workbooks.Open("X:\Job\Masroori\3-042-PMS.xlsx") 但问题是,如果我不想每次都打开它,我怎么能引用它呢。我使用了此代码(不带.Open),但我收到了此错误!:“下标超
Dim Basicwb As Excel.Workbook
Dim Basic As Excel.Application
Set Basic = New Excel.Application
Set Basicwb = Basic.Workbooks.Open("X:\Job\Masroori\3-042-PMS.xlsx")
但问题是,如果我不想每次都打开它,我怎么能引用它呢。我使用了此代码(不带.Open),但我收到了此错误!:“下标超出范围”
另外,我不想每次都激活工作簿,有什么办法吗?取自
msdn
网站的工作簿属性:
“返回表示所有打开工作簿的工作簿
集合。只读。”
因此,代码的最后一行给出了一个错误,因为文件未打开。请注意,如果工作簿未打开,则不能引用工作簿中的对象。您可以访问工作簿中的任何内容,而无需激活它(因此无需使用.Activate
),但它必须是打开的。也许这个问题对你有帮助:
如果工作簿已打开,则可以执行以下操作:
Dim wBook as Excel.Workbook, rngTemp as range
Set wBook = workbooks("wbName.xls")
With wBook
' Do stuff, no need to activate. Example:
set rngTemp=.sheets(1).usedRange
End With
我希望这有帮助
Dim wBook as Excel.Workbook, rngTemp as range
Set wBook = workbooks("wbName.xls")
With wBook
' Do stuff, no need to activate. Example:
set rngTemp=.sheets(1).usedRange
End With