[[20141010133022]] 『他ブックの標準モジュールを一括で削除したい』(ろでます) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『他ブックの標準モジュールを一括で削除したい』(ろでます)

こんにちわ、ろでますです。
別スレッドで他のお伺いをしているのですが、お伺いする系統が全く違うので、新たに別スレッドでご質問させていただきます。

表題にある通り、他のブックの標準モジュールを一括削除するする方法はないでしょうか?

とりあえず考えた案として

Function モジュール削除(OPNOpen)

    Dim DelComp(1 To 10) As Variant
    For Each BN In OPNOpen
        Workbooks(OPNOpen).Activate
        For i = 1 To 10
            Application.VBE.ActiveVBProject.VBComponents.Remove _
                Application.VBE.ActiveVBProject.VBComponents(delcomp(i)「変数は使えるのか?」)
        Next i
    Next BN
End Function

OPNOpen=ファイル名が配列で入ってきます。

例えばこれを
Function モジュール削除(OPNOpen)

    For Each BN In OPNOpen
        Workbooks(OPNOpen).Activate
            Application.VBE.ActiveVBProject.VBComponents.Remove _
                Application.VBE.ActiveVBProject.VBComponents("Module1")
    Next BN
End Function

とすると、自分自身のワークブックのモジュール1が消えてしまいました。
ということは、

        Workbooks(OPNOpen).Activate
でしていしても、そのワークブックのモジュールが消えるわけではないようですね。

なので、困っています。
Google等で色々調べたのですが、自ブックの削除は載っていても、他ブックの削除方法までは探すことができませんでした。

すいませんが、どなたか良きアドバイスがございましたら、何卒よろしくお願い申し上げます。

< 使用 Excel:Excel2010、使用 OS:Windows7 >


 ありますよ。

 ただ、
http://www.asahi-net.or.jp/~ef2o-inue/secur/sub07_01.html#label03
 ここに書いてありますが、その動きはウィルスと同じもんなんでよした方がいいと思います。

http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_800_200.html

 ここを読んで理解出来るのでしたら試してみてください。
(稲葉) 2014/10/10(金) 13:56

 Workbookオブジェクトから VBProject というプロパティが取得できます。

 これから、辿ってみてください

 ウイルスからワクチンも生まれるという考え方もありますから、
 使い方次第ですね!!

(ichinose) 2014/10/10(金) 14:01


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.