2017-09-28 13 views
1

ここは私が直面している状況です。 3つのブックが既に開かれています。それぞれの名前はbook1.xlsx、book2.xlsx、book3.xlsxです。複数の開いているブックの中で特定のExcelブックを選択できますか?

"book3.xlsx"のオブジェクトを選択しようとしました。

Dim ExcelApp 
    Dim objWorkBook, objSheets 
    Dim args, param 
    Dim result 


    Set ExcelApp = GetObject(,"Excel.Application") 
    Set objWorkBook = ExcelApp.ActiveWorkbook 


    Wscript.Echo(objWorkBook.name) 

期待される結果はbook3.xlsxでしたが、book1.xlsxを示しています。 複数のブックを開いているうちに、特定のExcelブックを選択することはできますか?

答えて

0

あなたは、別のワークブックを反復処理し、このようなものを使用したい場合は:あなたが必要とするすべての直接ワークブックを選択するのであれば

Dim ExcelApp 
Dim objWorkbook, objSheets 
Dim args, param 
Dim result 

Set ExcelApp = GetObject(,"Excel.Application") 
For Each objWorkbook in ExcelApp.Workbooks 
    Wscript.Echo(objWorkBook.Name) 
    If objWorkbook.Name = "book3.xlsx" Then 
     Exit For ' This is the workbook we wanted 
    End If 
Next 
If objWorkbook.Name = "book3.xlsx" Then 
    'objWorkbook is set to book3, so do whatever you like 
Else 
    ' No book3 found, throw up a message box to warn the user 
    MsgBox "No Book3.xlsx file found" 
End If 

を(そしてあなたはそれが存在します、特定している):

Dim ExcelApp 
Dim objWorkbook, objSheets 
Dim args, param 
Dim result 

Set ExcelApp = GetObject(,"Excel.Application") 
Set objWorkbook = ExcelApp.Workbooks("book3.xlsx") 
'objWorkbook is set to book3, so do whatever you like with it 
+0

Wooow!これは私が見つけるものです:)あなたに感謝dave –

関連する問題