Closed kazurayam closed 3 months ago
KVLプロシージャー一覧を作る.bas というprocedureを作った。もうずっと前に。
このprocesureを実行すると、ブックの中に含まれているSubやFunctionの名前を列挙したテキストが生成される。このテキストのことをProcedureListと呼ぶことにしようか。7つあるExcelワークブックそれぞれについてProcedureListを出力しよう。テキストファイルが7つできる。この7つを手かがりとしてシェルのfind grepコマンドを動かせば、参照関係を文字にすることができると思う。
VBAのソースコードをANTLRで構文解析するんじゃなくてKVLプロしじゃー一覧が同等の情報を出力できるわけだ。
いいんんじゃないか?
もういい
VBAのソースコードをRubberduckでexportしてテキストファイルにすることはできた。 私はひとつのSubを取り上げて、それがどこか他所で参照されているかどうかを調べたい。 さてどうやって実現するか?
VBAのソースコードを構文解析してAbstract Syntax Treeを生成し、そこからGraphVizで画像を描画する、ということをイメージしてみた。が、まあ、実現するのが難しい。
もっと簡単な対処方法があるのではないか?bashシェルのgrepコマンドで.basや.clsという名前のテキストファイル群をスキャンしまくればいいだけなんじゃないの?