セル内のアルファベット(半角・全角問わず)を取り出すには?
Excelで、セル内に含まれる半角・全角問わずアルファベットのみを抽出したい場合、VBAを使用すると簡単に実現できます。この記事では、1つの関数で半角と全角アルファベットの両方を取り出す方法をご紹介します。
VBAで半角・全角アルファベットを取り出す方法
以下のVBAコードを使用して、Excelシート上の半角および全角アルファベットをまとめて抽出することができます。
手順
- Excelを開き、開発タブから押してVisualBasicエディタを開きます。
- 「挿入」メニューから「標準モジュール」を選択します。
- 以下のコードをモジュールに貼り付けます。
VBAコード(半角・全角アルファベット抽出)
Function ExtractAlphabets(text As String) As String
Dim i As Integer
Dim result As String
result = ""
For i = 1 To Len(text)
' 各文字が半角または全角アルファベットかを判定
If Mid(text, i, 1) Like "[A-Za-z]" Or Mid(text, i, 1) Like "[A-Za-z]" Then
result = result & Mid(text, i, 1)
End If
Next i
ExtractAlphabets = result
End Function
コードの解説
- Forループ: セルの文字を1文字ずつ確認します。
- Like “[A-Za-z]” Or “[A-Za-z]”: 半角のA~Z、a~z、または全角のA~Z、a~zの範囲に含まれる文字かを判定します。
- result: 抽出された半角・全角アルファベットのみを含む文字列を連結し、結果を返します。
使用方法
Excelシートに戻り、例えばA2セルに文字列がある場合、隣のセルに以下の数式を入力してアルファベットのみを抽出します。
=ExtractAlphabets(A2)
例:抽出結果の表示
以下の表では、A列に元の文字列があり、B列に半角・全角のアルファベットのみが表示される例です。
| A | B | |
|---|---|---|
| 1 | 元の文字列 | アルファベット抽出 |
| 2 | ExcelでABCabc123 | =ExtractAlphabets(A2) |
| 3 | テスト123Test | =ExtractAlphabets(A3) |
まとめ
このVBAコードを使用することで、Excel上でセル内の半角・全角アルファベットをまとめて抽出することができます。データから特定の文字だけを取り出したい場合に便利ですので、ぜひ活用してみてください。
開発タブが表示されていないとき

開発タブを表示させるには? VBAやマクロの設定のために | EXCELトピックス
開発タブが表示されず、VBAやマクロの設定ができない場合の対処法ExcelでVBAやマクロを使用するためには、「開発」タブが必要ですが、初期設定では表示されていません。「開発」タブを表示する設定方法を以下にご紹介します。開発タブを表示させる方法「開発」タブは、Excelのオプション設定で表示することができます。以下の手...