Excel VBA | 配列

VBA
スポンサーリンク

では「実務で役立つ配列を使ったミニアプリ」のサンプルを、検索ツールチェックツールの2種類で紹介します。Excel VBAで簡単に動かせる形にしてあります。

サンプル1:検索ツール(商品コード検索)

用途イメージ:
社内で商品コードを検索して、商品名を表示する簡易ツール。

Sub ProductSearch()
    Dim codes(4) As String
    Dim names(4) As String
    Dim src As String
    Dim i As Integer
    Dim found As Boolean

    ' 商品コードと商品名を配列に格納
    codes(0) = "A001": names(0) = "ノートPC"
    codes(1) = "A002": names(1) = "プリンター"
    codes(2) = "A003": names(2) = "マウス"
    codes(3) = "A004": names(3) = "キーボード"
    codes(4) = "A005": names(4) = "モニター"

    ' 検索コードを入力
    src = InputBox("商品コードを入力してください")

    ' 検索処理
    For i = 0 To UBound(codes)
        If src = codes(i) Then
            MsgBox "商品コード " & src & " は「" & names(i) & "」です"
            found = True
            Exit For
        End If
    Next i

    If Not found Then
        MsgBox "商品コード " & src & " は登録されていません"
    End If
End Sub
VB

解説

  • 2つの配列(コードと商品名)を「対応関係」で管理。
  • 入力されたコードを検索し、見つかったら商品名を表示。
  • 実務では「社員番号→氏名」「顧客ID→顧客名」などに応用可能。

サンプル2:チェックツール(必須項目チェック)

用途イメージ:
入力されたデータに「必須項目」が含まれているかをチェックする。

Sub RequiredCheck()
    Dim required(2) As String
    Dim inputData(4) As String
    Dim i As Integer, j As Integer
    Dim found As Boolean

    ' 必須項目リスト
    required(0) = "氏名"
    required(1) = "住所"
    required(2) = "電話番号"

    ' 入力データ(例)
    inputData(0) = "氏名"
    inputData(1) = "住所"
    inputData(2) = "メールアドレス"
    inputData(3) = "電話番号"
    inputData(4) = "年齢"

    ' チェック処理
    For i = 0 To UBound(required)
        found = False
        For j = 0 To UBound(inputData)
            If required(i) = inputData(j) Then
                found = True
                Exit For
            End If
        Next j

        If Not found Then
            MsgBox "必須項目「" & required(i) & "」が入力されていません"
        End If
    Next i
End Sub
VB

解説

  • 「必須項目リスト」と「入力データリスト」を配列で管理。
  • 二重ループで必須項目が含まれているかをチェック。
  • 実務では「申請書の必須項目チェック」「入力フォームの検証」などに応用可能。

まとめ

  • 検索ツール: コードやIDから対応する情報を探す。
  • チェックツール: 必須項目や条件を満たしているか確認する。

どちらも「配列+ループ」でシンプルに作れるので、業務のちょっとした効率化に役立ちます。

VBA
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました