Excel(エクセル)VBAを使った検索システムの作り方をご紹介!

Excel(エクセル)の勉強方法のメイン画像 Excel(エクセル)

業務中に調べることの多い、Excel,Word,PowerPointなどのノウハウを発信していきます!

Biz Magic編集部をフォローする

Excel(エクセル)VBAとは

皆さんExcelのVBAとはなにかをご存じでしょうか?VBAとはVisual Basic for Applicationsの略であり、Microsoft Office製品の中に組み込まれているプログラミング言語です。

VBAを使用することで、Excel、Word、PowerPointなどのOfficeアプリケーションを自動化したり、カスタマイズすることができます。VBAは、オブジェクト指向プログラミング言語であり、各種オブジェクトを扱うことができます。

今回はキーワードを入力するためのテキストボックスを作成します。そのテキストボックスに入力されている値を取得するということがVBAを使用することで実現することができます。また、ループ処理を実現することもできるのでキーワードを入手しテーブルをループしキーワードを検索することができるのです。今回の記事ではExcelのVBAで検索システムを作る方法をご紹介していきます。

Excel(エクセル)VBAを使った検索システムの作り方

では、早速ですがExcelのVBAを使った検索システムの作り方をご紹介していきます。まず、検索システムを作成するために、以下の手順で行っていきます。

  • 検索窓を作成する
  • 検索結果を表示するためのテーブルを作成する
  • 検索ボタンを作成する
  • VBAコードを作成する

検索窓を作成する

まず、検索窓を作成します。検索窓は、検索するためのキーワードを入力するためのテキストボックスです。シートの上部にテキストボックスを挿入します。「開発」タブをクリックし、「挿入」ボタンをクリックします。「フォームコントロール」から「テキストボックス」を選択し、シート上に挿入します。

テキストボックスを選択し、「プロパティ」を開きます。「名称」を”txtSearch”などのわかりやすい名前に変更します。

検索結果を表示するためのテーブルを作成する

次に、検索結果を表示するためのテーブルを作成します。テーブルは、検索結果を表示するための領域です。

シートの下部にテーブルを作成します。テーブルには、必要な列と行を追加します。例えば、「名前」、「住所」、「電話番号」の列を追加することができます。テーブルにデータを入力します。

検索ボタンを作成する

次に、検索ボタンを作成します。検索ボタンは、検索キーワードを入力して、テーブル内のデータを検索するために使用します。

開発」タブをクリックし、「挿入」ボタンをクリックします。「フォームコントロール」から「ボタン」を選択し、シート上に挿入します。ボタンを選択し、「プロパティ」を開きます。「名称」を”btnSearch”などのわかりやすい名前に変更します。「キャプション」を”検索”に変更します。

VBAコードを作成する

最後に、VBAコードを作成して、検索機能を実装します。

  1. 開発」タブをクリックし、「Visual Basic」をクリックします。
  2. 左側の「プロジェクト」ペインで、作成したシートを選択します。
  3. 上部の「挿入」メニューから「モジュール」を選択し、新しいモジュールを作成します。
  4. モジュール内に、以下のVBAコードを記述します。
Sub SearchData()
    Dim sSearch As String
    Dim iRow As Integer
    Dim iColumn As Integer
    ‘検索窓からキーワードを取得する
    sSearch = Range("txtSearch").Value
    ‘テーブルから検索キーワードをループ処理で検索する
    For iRow = 2 To Range("Table1").Rows.Count
        For iColumn = 1 To Range("Table1").Columns.Count
            If InStr(1, Range("Table1").Cells(iRow, iColumn).Value, sSearch, vbTextCompare) Then
                Range("Table1").Cells(iRow, iColumn).Interior.ColorIndex = 6
            End If
        Next iColumn
    Next iRow
    
End Sub

このコードは、txtSearchに入力された文字列を検索し、テーブル内のデータを検索します。テーブル内のデータが検索キーワードに一致する場合、セルの背景色が変更されます。

検索ボタンにマクロを割り当てます。「開発」タブで、「マクロ」をクリックし、作成したマクロを選択します。「オブジェクト」ペインに戻り、ボタンをクリックして、検索が実行されることを確認します。

以上で、Excelで便利な検索システムを作成するための手順が完了しました。この記事では、Excelで検索システムを作成する手順について解説しました。検索システムを作成することで、大量のデータを検索し、必要な情報を簡単に取得することができます。VBAを使用して検索機能を実装することで、さらに高度な検索機能を実現することができます。Excelの検索システムを作成して、業務効率を向上させることができます。また今回は検索した値のセル背景色を変更させましたが、メッセージボックスでどこのセルの値かなどを表示させることも可能です。自分の作業に合った変更を加えて使いやすいシステムを作ってみてください。

また今回ご紹介したコード以外にもVBAにはFindメソッドというメソッドがあり、こちらを使用することでも検索システムを作成することができます。

Excelの操作方法は実際に手を動かし、身につけていきましょう

今の時代、様々な仕事でExcelを使用することがあるでしょう。今回はExcelのVBAで検索システムを作る方法についてをご紹介しました。このような機能を使いこなすことができれば仕事にも役に立つので、実際に手を動かし、覚えていきましょう。

WordやExcelなどのOfficeツールでは便利なショートカットキーなどがたくさんあるのでよく使う作業に関してはショートカットキーを調べてみるのも効率よく仕事を進める上で大切なことなのでこれから実践してみましょう。

コメント

タイトルとURLをコピーしました