ExcelSheetExplorer v0.3β

Excelファイルを開かずにシート名の一覧を取得するツールに検索機能を追加。Excelのオブジェクト生成せずにバイナリを直接読むので軽快。表記ゆれに対してあいまい検索できるように、大文字小文字は区別せず、スペース区切りでOR検索できるようにしてみた。検索処理を裏タスクでやるマルチスレッド化実装の話は昨日のエントリ参照。
Excelで既に開いているファイルは排他アクセスっぽくて読み取りでも開けないみたいで、検索対象から除外した。いちおー調べたところ解決策は2つあって、1つは開いてるんだからMicrosoft Excel Object LibraryでExcelを外部から制御してシート名取得する技。もうひとつは、そのファイルを一時的にコピーして開くという苦し紛れな方法。前者はバイト先の古いExcel97でも動くのか互換性的な問題があるので不安。後者は後始末を確実にやる保証をしようとするとなかなか煩雑なコードになりそうなのでやめた。いろいろ試行錯誤し悩んだ末、結局開いてるファイルは無理せず単に除外するというのがシンプルでよいという結論に。

まぁそんなこんなで簡単に探せるようになった。個人的には手動であいまい検索するためのOR検索がよい仕事してます。あとキーワードなしで検索すると全対象ファイルのシート名一覧が出力できるようになってます。完成品はこちら