从Word打开Excel并执行操作
我想创build一个marco,使我能够在Word中工作时在Excel表格中添加一些内容。 我设法得到一些工作,从Word打开一个Excel文件:
Dim excelApp As Excel.Application Dim openExcel As Workbook Dim var1 As Integer Set excelApp = New Excel.Application Set openExcel = excelApp.Workbooks.Open("C:\Documents and Settings\aa471714\Desktop\Book1.xls") excelApp.Visible = True
但是现在我想添加在Excel中应该发生的代码。 但是当我添加相关的代码:
Sheets("Sheet2").Select Range("A4").Select
这似乎并不奏效。 我可以俯视吗?
亲爱的问候,
渣子
请记住,在Word中创build的macros默认应用程序始终是Word应用程序。 因此,每当您想要在Excel中进行任何操作时,您都需要通过添加对Excel应用程序(或其他Excel对象的完整引用)(如下所示)来声明它。
请记住,您将需要在这种情况下添加扩展的对象层次结构。
回到你的代码 – 添加这种types的对象引用应该可以解决这个问题:( 包括一些额外的重新版本)
'comments referring to Object hierarchy openExcel.Sheets("Sheet2").Select 'OK because sheet is an object below Workbook excelApp.Range("A4").Select 'NEW, Range is object below Application or... openExcel.Sheets("Sheet2").Range("A4").Select 'IMPROVED, Range is object below sheet 'general- Range.Select works only for activesheet!!
对象openExcel
保持对excelApp
表示的Excel应用程序的excelApp
。