Excel VBA 1つの検索キーで図書レコードを検索


では、実際に書名の検索キーが1つの場合で検索処理を書いてみましょう。

サンプルデータbooks-search.xlsm「図書検索.xlsm」の標準モジュール「T02図書検索キー1つ」に参考コードを掲載しておきます。

【作成手順】

(1) オブジェクトであるワークシートを使いやすいようにSet文を使って、オブジェクト型変数名に置き換えます。


(2) 図書検索処理を一つのサブプロシージャにしてメイン処理から切り離して機能を分割します。


(3) メイン処理からCall文で図書検索処理を呼び出します。


(4) 最終レコード行番地を取得。


(5) ワークシート「図書」の3行目から最終行まで検索を繰り返します。


(6) 1つの書名キーで検索するIf文でワイルドカード(*)を使って書名のー部の語でも検索できる。


(7) ここでは検索結果をイミディエイトウィンドウに表示します。

【ワンポイント】 Subプロシージャの実行

書いたコードを実行するには、大きく分けて2つあります、1つはF5 キーで、もう1つは、マクロダイアログ ボックスからの実行です。

* F5 キーで実行

Subプロシージャ内にカーソルがある場合はF5 キーを押すとそのSubプロシージャが実行されます。

当然ですが、Functionプロシージャはこの方法では実行できません。関数ですので、必ずセル内か、Subプロシージャ内でしか実行できません。

* 「マクロ」ダイアログ ボックスで実行