AccessとかExcelでVBAのソースを一括でテキストに書き出す

やっと見つけた。なかなかググっても無いですね。
対象はAccess/Excel2000。それ以降は確認できず。てゆうか既に搭載されてますかね?
とりあえず、わかってる人対象なのでご利用は自己責任で。(たいした事やってないけどね)

  1. あぁ、なにをしたいのか説明。

 AccessやらExcelで作ったモジュールとかマクロとか言われる類のプログラムソースを
 テキストファイルに一括で吐き出すためのVBAプログラムです。(マトリョーシカ的な)
 通常はプロジェクトエクスプローラから選んで1つずつエクスポートするか
 1つずつドロップするかしなければいけませんが、これでびしゃーーっと吐き出してくれます。
 多分。
 お好きなエディタで編集することが可能になります。

  1. 使い方

 参照設定で[Microsoft Visual Basic Application Extensibility]をチェック
 以下のコードを吐き出したいコードのたまったMDBやらXlsやらに食わせます。
 出力パスは適当に。
 おもむろにF5殴打。
 出力。
 拡張子とか面倒。
 セキュリティ警告?ウィルスにかかってるんじゃね?

以下Access

Sub subExportAllModuleforAccess()
    
    Dim vbcComp As VBIDE.VBComponent

    For Each vbcComp In Application.VBE.ActiveVBProject.VBComponents
       Debug.Print vbcComp.Name, vbcComp.Type
       vbcComp.Export ("c:\20080920\" & vbcComp.Name)
    Next vbcComp
End Sub

以下Excel

Sub subExportAllModuleForExcel()
    
    Dim vbcComp As VBIDE.VBComponent

    For Each vbcComp In ActiveWorkbook.VBProject.VBComponents
       Debug.Print vbcComp.Name, vbcComp.Type
       vbcComp.Export ("c:\20080920\" & vbcComp.Name)
    Next vbcComp
End Sub

Accessのマクロ(モジュールじゃないほう)で同様に悩んでる人は
http://www.accessclub.jp/bbs2/0018/beginter06075.html
なんかを見て、マクロをモジュールに一括変換するのも
あわせてみるとしやわせになれる。
おれはなれた。