回答編集履歴

2

追記

2019/06/02 19:20

投稿

hatena19
hatena19

スコア33699

test CHANGED
@@ -2,7 +2,11 @@
2
2
 
3
3
 
4
4
 
5
- 提示のコードに、エクセルApplcationの終了を追加するなら、下記のコードになりますね。
5
+ 提示のコードに、エクセルApplcationの終了を追加するなら、~~下記のコードになりますね~~
6
+
7
+ **追記:** 試してみたら、`Set App = .Applcation`でエラーになりました。
8
+
9
+ Withを使わず変数宣言して `Set wb = Workbooks.Open(str1)` で開いて `wb.Application.Quit` で終了させたらエラーはなくなりましたが、タスクマネージャで確認したら、エクセルApplcation は残ってました。下記の`Test3`以降のコードの場合は、エクセルApplcationはきれいに消えました。
6
10
 
7
11
 
8
12
 

1

書式の改善

2019/06/02 19:20

投稿

hatena19
hatena19

スコア33699

test CHANGED
@@ -64,15 +64,13 @@
64
64
 
65
65
  ```
66
66
 
67
+ 下記の点を理解してください。
67
68
 
69
+ - 参照設定してあると、Workbooks.Open すると裏でエクセルApplcationが自動生成される。
68
70
 
69
- 参照設定してあると、Workbooks.Open すると裏でエクセルApplcationが自動生成される
71
+ - Workbooks.Open はWorkbookオブジェクトを返す。
70
72
 
71
- Workbooks.Open はWorkbookオブジェクトを返す。
72
-
73
- Workbookの親のエクセルApplcationは、Workbookオブジェクトの Applicationプロパティで取得できる。
73
+ - Workbookの親のエクセルApplcationは、Workbookオブジェクトの Applicationプロパティで取得できる。
74
-
75
-
76
74
 
77
75
 
78
76
 
@@ -186,6 +184,6 @@
186
184
 
187
185
  Excel.Application を生成したら、自動で破棄してくれませんので、
188
186
 
189
- Quit は必須ですね。
187
+ **Quit は必須**ですね。
190
188
 
191
189
  裏で自動で生成されたとしても。