Excel VBAで特定の文字列パターン(例:ABC-1234)をチェックする業務効率化テクニック

この記事では、Excel VBAを用いて特定の文字列パターン(例:ABC-1234)をチェックする方法について、具体的なコードとその解説を通じて詳しくご紹介します。VBA(Visual Basic for Applications)を活用することで、日々の業務処理を大幅に効率化することが可能です。

目次

Excel VBAの基本

Excel VBA(Visual Basic for Applications)は、Microsoft Excelに組み込まれたプログラミング言語です。これを用いると、単純作業の自動化だけでなく、高度なデータ分析やレポート作成も可能になります。

そもそも、どこにVBAコードを書いて、どう実行すれば良いのか分からない場合は、以下の記事をご参照ください。

VBAによる文字列パターンの基本チェック

特定の文字列パターンのチェックは、データ検証や整合性の確認、エラーチェックなど、業務の多くの場面で必要になります。Excel VBAを使用することで、これらの処理を自動化し、人手によるミスを削減できます。

基本的なコード


Sub CheckStringPattern()
    Dim cellValue As String
    cellValue = Range("A1").Value ' A1セルの値を取得
    If cellValue Like "ABC-####" Then
        MsgBox "文字列パターンが一致します。"
    Else
        MsgBox "文字列パターンが一致しません。"
    End If
End Sub

コードの詳細解説

1. `Dim cellValue As String`: 文字列変数`cellValue`を宣言します。
2. `cellValue = Range(“A1”).Value`: セルA1の値を`cellValue`に代入します。
3. `If cellValue Like “ABC-####”`: `cellValue`が`ABC-####`の形式に一致するかどうかを判断します。
4. `MsgBox “文字列パターンが一致します。”`: 一致する場合、メッセージボックスで通知します。

応用例

特定の文字列パターンのチェックは多くの場面で使えるため、いくつかの応用例を以下に示します。

応用例1:複数セルを一括でチェック


Sub CheckMultipleCells()
    Dim i As Integer
    For i = 1 To 10
        Dim cellValue As String
        cellValue = Cells(i, 1).Value
        If cellValue Like "ABC-####" Then
            Cells(i, 2).Value = "OK"
        Else
            Cells(i, 2).Value = "NG"
        End If
    Next i
End Sub

コードの詳細解説

– `For i = 1 To 10`:1から10までのセルをチェックします。
– `Cells(i, 1).Value`:i行1列のセルの値を取得します。
– `Cells(i, 2).Value = “OK”`:一致する場合、i行2列のセルに”OK”と表示します。

応用例2:条件に応じた処理の分岐


Sub CheckPatternAndProcess()
    Dim cellValue As String
    cellValue = Range("A1").Value
    If cellValue Like "ABC-####" Then
        ' 何らかの処理
    ElseIf cellValue Like "DEF-####" Then
        ' 別の処理
    Else
        ' それ以外の処理
    End If
End Sub

応用例3:特定のパターンを含むセルをハイライト


Sub HighlightCells()
    Dim i As Integer
    For i = 1 To 10
        Dim cellValue As String
        cellValue = Cells(i, 1).Value
        If cellValue Like "ABC-####" Then
            Cells(i, 1).Interior.Color = RGB(255, 0, 0)
        End If
    Next i
End Sub

まとめ

Excel VBAを活用して特定の文字列パターンを効率よくチェックする方法について解説しました。基本的なコードから複数の応用例までを紹介し、その使い方と活用の幅を広げることができるでしょう。

VBAも良いけどパワークエリも良い

VBAの解説をしてきましたが、VBAは正直煩雑でメンテナンス性が悪いです。最近はモダンExcelと呼ばれるパワークエリやパワーピボットへのシフトが進んできています。本サイトでもパワークエリの特集をしており、サンプルデータを含む全11回の学習コンテンツでパワークエリを習得することができます。

クリックするとパワークエリの全11講座が表示されます。

パワーピボットの記事はありません。興味がある場合は、書籍で学んでみてください

コメント

コメントする

目次