INDEX
Excelで全角ひらがな・カタカナを半角カタカナに変換する方法(関数・VBA)
Excelでデータを統一する際、全角ひらがな(あいうえお)や全角カタカナ(アイウエオ)を半角カタカナ(アイウエオ)に変換したい場合があります。特に、データ入力のフォーマットを統一したり、システム連携時に半角カタカナが求められる場合に役立ちます。
本記事では、ExcelのVBAを活用して、ひらがな・カタカナを半角カタカナに変換する方法を解説します。
VBAを使って全角ひらがな・カタカナを半角カタカナに変換する方法
VBAを使えば、Excel上で全角ひらがな・カタカナを半角カタカナに変換することが可能です。
セル範囲を選択して変換するVBAコード
事前に変換したいセル範囲をマウスで選択し、VBAマクロを実行すると、その範囲内の全角ひらがな・カタカナが半角カタカナに変換されます。
Sub ConvertSelectedToHalfWidthKatakana()
Dim cell As Range
' 選択したセル範囲を処理
For Each cell In Selection
If Not IsEmpty(cell.Value) Then
' 全角ひらがなを全角カタカナに変換 → 半角カタカナに変換
cell.Value = StrConv(StrConv(cell.Value, vbKatakana), vbNarrow)
End If
Next cell
MsgBox "選択した範囲の全角ひらがな・カタカナを半角カタカナに変換しました。", vbInformation
End Sub
VBAのコード解説
Selection
→ ユーザーがマウスで選択した範囲を取得StrConv(cell.Value, vbKatakana)
→ 全角ひらがなを全角カタカナに変換StrConv(..., vbNarrow)
→ 全角カタカナを半角カタカナに変換IsEmpty(cell.Value)
→ 空白セルは処理しない
使用方法
- 変換したいセル範囲をマウスで選択する
- VBAマクロを実行(「開発」タブ →「マクロ」 →「ConvertSelectedToHalfWidthKatakana」)
- 選択した範囲の全角ひらがな・カタカナが半角カタカナに変換される
実際の変換例
A | B | |
---|---|---|
1 | ひらがな | (変換後)ヒラガナ |
2 | カタカナ | (変換後)カタカナ |
3 | コンピュータ | (変換後)コンピュータ |
ユーザー定義関数(UDF)として利用するVBA
関数として利用したい場合は、以下のコードをVBAに登録します。
Function ToHalfWidthKatakana(str As String) As String
ToHalfWidthKatakana = StrConv(StrConv(str, vbKatakana), vbNarrow)
End Function
使用例
Excelのセルに次の数式を入力すると、ひらがな・カタカナが半角カタカナに変換されます。
=ToHalfWidthKatakana(A1)
まとめ
Excelで全角ひらがな・カタカナを半角カタカナに変換するには、以下の方法が有効です。
- セル範囲を選択して一括変換 → VBAマクロ(
ConvertSelectedToHalfWidthKatakana()
)を実行 - 関数として利用 → ユーザー定義関数(
=ToHalfWidthKatakana(A1)
)
これらの方法を活用すれば、Excelのデータを統一し、より扱いやすくすることができます。