テキストキーワード使用一覧(Grepツール)

大量に集積したテキストファイルから検索抽出できます。
このサイトの作成でも使用します。   Webサイトは主にテキストファイルと画像ファイルの構成で作成されています。
静的なサイトではページごとにテキストファイルを配置するので、このサイトでは400近いテキストファイルを保有しています。 ここでリンク関係に関わる変更などを行なうとあちこちのページの修正を行なう必要が発生するのですが「どこを修正するのか」を確実に見つけ出すのにこのようなプログラムが必要になります。
ログファイルの検索でも役立ちます。 ログファイル自体はWindows等のOSや各種プログラムが設定によって自動的に作成してくれますが、何か問題があった時に大量に保有されているログファイルから問題となるキーワードを探すのも大変な作業になります。
1つのファイルの中であれば「メモ帳」でも検索は可能なのでしょうが、日ごとに異なるファイル名でフォルダ内に大量に保存されているログファイルから探すというような場合にこのようなプログラムが必要になります。
こんなプログラムです。
テキストファイルを集積したフォルダを指定して、配下にある各テキストファイルを順次検索して指定されたキーワードがあるとそのファイル名や行位置をExcelシート上に一覧化させるプログラムです。
本処理で対象としている「テキストファイル」は単に「*.txt」だけということではなくたとえばホームページを作成している人であれば「*.html、*.htm」など、プログラム開発分野であれば「*.c、*.h、*.cpp」など、システム監視の分野であれば「*.log」など、11つのファイルはテキストエディタやメモ帳で開いて検索できるものの、ファイル群を相手にキーワードを探すには簡単ではありません。
ホームページであれば、あるリンク先が変更になった時に変更しなければならないリンク元を探して一覧にしてくれます。
プログラム開発であれば機能変更を行なう時の対象となる記述の発生箇所を探して一覧にしてくれます。
システム監視の分野であればたとえば日別にファイル出力されているシステムログから不正プログラムの使用履歴を一覧にするなどが可能です。
テキストエディタやメモ帳で開いてテキスト表示できるファイルであれば本プログラムでの検索が可能なので、CSVファイルやログファイルも処理できます。

起動画面はこのようになっっています。
ショートカットやメニューから起動すると、このような画面が表示されます。

テキストキーワード使用一覧

ここでタイトル、ルートフォルダ、検索キーワード等を入力して「処理開始」をクリックすることで処理が行なわれます。


テキストキーワード使用一覧

「タイトル」は自由に入力できますが、検索を実行するとルートフォルダ、拡張子の指定とセットでリストに登録されます。
次回に同一フォルダでの検索を行なう時には「タイトル」のところのプルダウンから名称を選択するだけで済むようになっているので区別が判るようなタイトルを付けて下さい。

処理結果はExcelに出力されます。
処理結果はこのようにExcelに出力されます。

テキストキーワード使用一覧

「キーワード使用一覧」シートは検索でヒットした内容の一覧です。
A列:ルートフォルダ以下のフォルダパスです。
B列:ファイル名です。
C列:行番号です。
D列:その行のテキスト内容です。

さらに「ファイル別状況」シートがあり、ファイル別にキーワードのヒットした件数の一覧が出力されます。

インストールについて
下記の「ダウンロード」からインストーラが収容されたZIP形式の圧縮ファイルがダウンロードできます。



動作環境はMicrosoft .NET Framework 4.*(4.5~4.8)です。
本アプリケーションは32ビット版ですが、Windows64ビット版でも問題ありません。



当然ながら、Microsoft Excel(32ビット版のみ対応)がインストールされていることが起動の前提条件となります。

解凍してから「TextSearchKeywords1_Setup.exe」を起動することでインストールが行なわれます。インストール後はスタートメニューの「すべてのプログラム」から「Excelでお仕事!VisualStudioツール」の中にある「テキストキーワード使用一覧」を起動して下さい。 なお、デジタル証明書は搭載していないので、インストール中の確認画面で発行元は「不明」と表示されます。

アンインストールを行なう場合は、コントロールパネルの「プログラムと機能(プログラムの追加と削除)」から「テキストキーワード使用一覧」を選択して「削除」を実行します。
本ソフトではレジストリは使用していません。画面モードの設定保存はMicrosoft .NET Frameworkの設定保持機能を使っています。

著作権等について
本ソフトの著作権は「Excelでお仕事!(井上 治)」が所有しています。
フリーソフトですのでご自由にダウンロードしてご利用いただけます。 但し、動作確認は充分に行なっておりますが、このソフトを使ったことによって損害が発生しても一切の責任は負えません。

本記事内容の転載についてはアーカイブに変更を加えないことを条件に、転載は自由にして頂いて構いませんが、必ずご連絡いただくようにお願いします。 連絡については当サイトの「意見・質問」ペ-ジが利用できます。
また、不具合や改善点などについてもご連絡いただけると幸いです。

バージョン情報

更新日 Ver 内容
2016/02/07 1.0.0.0 新規作成
2016/03/21 1.0.0.0 初回調整等
2016/05/11 1.0.1.0 タイトルリストが1件のみの時は起動時にそのタイトルを表示させるように対応
2016/05/14 1.0.1.1 タイトルリスト1件のみ起動時は検索キーワードを選択するように対応
最小化ボタンを追加
2016/05/15 1.0.1.2 最小化状態でフォーム位置を設定保存させない対応を追加
2016/06/02 1.0.2.0 Excelインスタンス指定を追加
出力するExcelシートを印刷時に用紙幅に全列を納めるように調整
2016/06/12 1.0.2.1 Excelの矩形貼り付け時のセル収容可能文字数上限を910文字に設定
プリンタ非搭載PCでのPageSetup例外を回避する対応を追加
2016/07/09 1.0.2.2 マルチスクリーン時のフォーム制御の改善
2016/11/26 1.0.2.3 ワークシートの初期設定で条件付き書式をR1C1参照形式環境で行なう設定を追加
ページ設定の上下マージンを調整
2017/02/20 1.0.3.0 「シート上の表示内容を列幅内で自動的に折り返す」の指定機能を追加
2017/11/11 1.0.3.2 ボタン等のダブルクリック操作抑制に関する内部的な改善
2018/04/07 1.0.3.3 文字コード判定不能時は強制的にSJISで処理する対応を追加
2018/04/08 1.0.3.4 拡張子未指定時に画像ファイルなどでオーバーフローしてしまう件を極力回避する対応を追加
2018/10/06 1.0.4.0 DPI環境で起動時フォーム位置がスクリーン領域外になってしまうことが発生する件の対応
2018/11/04 1.0.4.1 画面位置保持機能について複数画面時の個別DPI指定に対応する修正②
2021/11/30 1.1.0.0 開発環境を「Microsoft Visual Studio 2010」から「Microsoft Visual Studio 2019」に変更
2021/11/30 1.1.0.0 フレームワーク環境を「.NET Framework4.x」に変更
(ターゲットフレームワークは「.NET Framework4.5」に設定)
2022/05/14 1.1.0.2 ・開発環境を「Microsoft Visual Studio 2022」に変更
Windowsスタートメニューメンバの整理(概要説明リンクの削除⇒本体メニューから呼び出し可能)
2023/01/15 1.1.1.0 独自メッセージボックス変更(マウス既定ボタンモード対応)

※バージョンアップでのインストール時に動作上は正常にインストールされるものの、EXEファイルが置き換わらない現象があるようです。 フォーム上の各コントロールをマウスでポイントするとツールチップでバージョンが表示されるので、新しいバージョンになっていない場合は一旦アンインストールさせてから再度インストールさせて下さい。

ダウンロードはこちら。

←TextSearchKeywords1_Setup.zip
      (917KB)

Vectorからも「テキストキーワード使用一覧」でダウンロードできます。


.NET Frameworkの変更について   PCに搭載されている.NET Frameworkのバージョンはその有無を含めてWindows側の環境に依存します。
本プログラムは従来、古いWindowsへの対応から、.NET Framework2.0~3.5をターゲットとしていましたが、 現在では逆に.NET Framework3.5をインストールすることが必要となって余分な作業負荷となってしまってきているため、 Ver1.1.0.0より.NET Framework4.xに変更しました。



本プログラムを新規にインストールされる場合は必要な.NET Framework環境の確認だけでご利用いただけますが、 以前の.NET Frameworkバージョンから.NET Framework4.xにバージョンアップされる場合のみ設定やデータが引き継がれないのでご注意下さい。



手動作業での設定引き継ぎ(設定ファイルのコピー作業)バージョンアップ時の不具合については、こちらで説明しています。



一旦、.NET Framework4.x環境に移行した後の今後のバージョンアップについての設定内容は、自動的に引き継がれるようになります。