『ファイルの破棄の方法について』(かぼちゃ)
以下のように作ってみました。
動作させるとオープンしたファイルが消えて、
見た目は正常かと思ったのですが、
編集画面のプロジェクトには
クローズしたはずのファイルが残ったままになります。
実行するたびに増え続けていきます。
何か間違っているのだろうけど間違いがわかりません。
間違っているところと修正方法を教えてください。
Private Sub CommandButton1_Click()
Dim wb As Workbook, ws As Worksheet Dim varwork As Variant Dim arybook As ArrayList: Set arybook = New ArrayList
For Each varwork In Array("Book1.xlsm", "Book2.xlsm", "Book3.xlsm") Set wb = Workbooks.Open(varwork): Set ws = wb.Worksheets("Sheet1") arybook.Add (Array(wb, ws)) Next
For Each varwork In arybook varwork(0).Close: Set varwork(1) = Nothing: Set varwork(0) = Nothing Next
End Sub
< 使用 Excel:Excel2016、使用 OS:Windows11 >
たしかにそうなりますね。(当方Excel365,windows10) ただし通常のBookを要素とする配列だとそういう事象は発生しません。
ArrayListがBookをつかんだままになっているとでもいったことなんでしょうか。 どなたか解明していただけるといいですね。
(xyz) 2025/06/26(木) 13:16:14
Collection Dictionary SortedList
なんかがVBAから使えるそぉですよ。。。。(*^^*) 試してみようかな。 また暇な時ね^^;
m(__)m
(隠居Z) 2025/06/26(木) 17:50:05
幽霊プロジェクト事象の一種なんでしょうね。
こうした話は一般ユーザーには原因は分からないような気がします。 コードの問題じゃないような気がします。(もし原因が指摘されたら不明を恥じるばかりですが) 製品そのものの動作なので、マクロソフト社でないとわからない気がします。 そこまでの情報が開示されていないわけで。
同社が運営する質問掲示板にでも尋ねてみてはいかがですか? # でも最近、「StackOverFlow(という有名質問掲示板)に投稿してみては」という回答があって驚きました。 # 回答者は別にMS社の社員じゃないようですしね。 # ユーザーが困っている点をMS社に連携して欲しいと思って投稿しているはずなんだが。 # どうなってんだかねえ。
(xyz) 2025/06/26(木) 20:38:14
Erase も nothing も Removeall も無しでも残骸は消えてくれましたですよ。(*^^*)
ご報告まで。
m(__)m
(隠居Z) 2025/06/26(木) 21:24:54
VBEウインドウを開いた状態で実行すると「幽霊プロジェクト」状態になるけど、 VBEウインドウ閉じてマクロ実行ダイアログから実行する分には発生しないですね...
(白茶) 2025/06/26(木) 21:42:08
私のところでは、ボタンに登録したマクロで実行しても「幽霊プロジェクト」になってしまいました。 続けて実行したら、なんと「メモリ不足エラー」となりました。 これ以上は(私には)危険ですし、私にはわかりそうもない(元々そう思っていました)ので、 ここでリタイアさせていただきます。
なお、ネットで「Excel 幽霊プロジェクト」と検索すると、結構類似例が散見されます。ご参考まで。
(xyz) 2025/06/26(木) 23:46:50
(かぼちゃ) 2025/06/30(月) 12:44:55
通常運行ってなんですか?
ArrayListを使う必要姓がわかってませんが、 ArrayListの機能がどうしても必要なら、ある程度のリスクが想定されても使うしかありません ArrayListを使わなくてもよい別の方法があるならば、そちらを採用した方がよい
ArrayListを使う必要姓の説明なしに、他人に最終判断を委ねるのはよくありません (´・ω・`) 2025/06/30(月) 12:56:57
> VBEウインドウを開いた状態で実行すると「幽霊プロジェクト」状態になるけど、 > VBEウインドウ閉じてマクロ実行ダイアログから実行する分には発生しないですね... > (白茶) VBEウインドウ での動作がおかしいだけで VBEウインドウ を使用しない状態で使用する分には問題がないのかと (かぼちゃ) 2025/06/30(月) 15:38:31
>VBEウインドウ を使用しない状態で使用する分には問題がないのかと
そう自分で考えるなら、それでいいと思います 他人に保証を求めないで、自己責任でどうぞということです (´・ω・`) 2025/06/30(月) 15:54:58
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.