teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2019/04/24 13:27

投稿

mattuwan
mattuwan

スコア2167

answer CHANGED
@@ -27,4 +27,23 @@
27
27
  End Function
28
28
  ```
29
29
 
30
- こんな感じですかね?
30
+ こんな感じですかね?
31
+
32
+ ----------<追記>------------
33
+ ```VBA
34
+ Sub test()
35
+ Const cBName As String = "Book1" '開いているブック名
36
+ Dim wb As Excel.Workbook
37
+
38
+ If Word.Application.Tasks.Exists(cBName) Then
39
+ 'Set wb = Excel.Workbooks(cBName)
40
+ Set wb = GetObject(, "Excel.Application").Workbooks(cBName)
41
+ End If
42
+ End Sub
43
+ ```
44
+
45
+ Word VBA だと、指定のブックが開いているかどうかは簡単に確認出来ますが、
46
+ Set wb = Excel.Workbooks(cBName)
47
+ とやっても新しくエクセルが起動しますね^^;
48
+ WindowsのAPI関数でウィンドウのハンドルを探したらよさそうですが、
49
+ GetObject関数を使うのが簡単そうですかね。。。。。