定常業務において「選択したセルの英数字だけを一瞬で半角化したい」という高度なニーズに応えるため、実務でそのまま導入できるVBAマクロのコードを公開します。このコードは、VBAマクロによる全角半角自動変換を実現し、全角カタカナには一切手を触れず、全角英数字および全角スペースのみを半角へと書き換えます。
以下のプロシージャをVBE(Visual Basic Editor)の標準モジュールに貼り付けることで、2026年現在のExcel環境でも堅牢に動作します。
Sub ConvertFullWidthToHalfWidthSpecific() Dim targetRange As Range Dim cell As Range Dim regEx As Object Dim match As Object Dim text As String ' 選択範囲を対象に設定 Set targetRange = Selection Set regEx = CreateObject("VBScript.RegExp") ' 全角英数・全角記号・全角スペースにマッチする正規表現パターン With regEx .Global = True .IgnoreCase = True .Pattern ="[0-9A-Za-z ]" End With Application.ScreenUpdating = False For Each cell In targetRange If Not IsEmpty(cell.Value) And Not cell.HasFormula Then text = cell.Value ' 全角スペースの置換 text = Replace(text, " ", " ") ' 一致した全角英数字をStrConvで半角化 Dim matches As Object Set matches = regEx.Execute(text) For Each match In matches text = Replace(text, match.Value, StrConv(match.Value, vbNarrow)) Next match cell.Value = text End If Next cell Application.ScreenUpdating = True MsgBox "英数字とスペースの半角変換が完了しました。", vbInformation, "処理完了" End Sub
このマクロをクイックアクセスツールバーやショートカットキーに登録しておけば、対象範囲を選択して実行するだけで、わずか1秒足らずでクリーンなデータへと生まれ変わります。日々のルーティンワークを劇的に短縮する、2026年最新エクセル時短ワザ一覧の中でも屈指の実用性を誇る手法です。