Excel VBA脚本在2010年运行Office不能识别Workbook对象。 但它在2007年工作

我在VBA Excel 2007中编写了一些脚本,现在我正试图在Excel 2010上运行这些脚本。但是,最简单的对象Workbooks在2010版本中并未得到识别:

Dim myValue As Variant Dim myWksheet As Worksheet Set myValue = Workbooks("myWorkbook").Sheets("Sheet1").Range("A1").Value Set myWksheet = Workbooks("myWorkbook").Sheets("Sheet2") 

这两行都给了我2010年的错误,但不是2007年。为什么会发生这种情况,我该如何解决?

在此先感谢,Lakeand

find了我自己的问题的答案!

有时会出现这种情况,因为没有很好的理由,编译器无法检测到Workbook对象。 所以为了避免任何错误,只要把它指向它的父类即可。 那样就没有出错的余地。

在VBA 2007和2010的情况下,Excel的前言工作簿。 像这样:

 Dim myValue As Variant Dim myWksheet As Worksheet Set myValue = Excel.Workbooks("myWorkbook").Sheets("Sheet1").Range("A1").Value Set myWksheet = Excel.Workbooks("myWorkbook").Sheets("Sheet2") 

谢谢! 湖