あなたはデータの集計の際、全角と半角が混じっていて、重複データの削除や突合がうまくできずに困ったことはありませんか?
データの集計の際、例えば全角の「A」と半角の「A」だと同じ内容なのに、違うものとして取り扱われてしまうので、データの抜け漏れが出て間違いにつながると困りますよね。
エクセルVBAを使えば、選択した範囲を一気に全角に変換してくれます。
今回は「エクセルで選択した範囲のセルの文字を全角にそろえるマクロを作る方法」を紹介します。
エクセルで選択した範囲のセルの文字を全角にそろえるマクロを作る方法
エクセルで選択した範囲のセルの文字を全角にそろえるマクロを作る方法です。
下の画像のように、全角と半角が混じっていると、集計がうまくできません。
これを全角にそろえてみます。
マクロを作るときは、「開発」タブを使います。
開発タブが出ていない方は、下のリンクで出し方を紹介していますので、まずは準備をお願いします。
→エクセルで開発タブを表示する方法
1.「開発」タブをクリック →「挿入」をクリック →「ボタン」をクリック
2.「新規作成」をクリック
3.コード入力画面が開く
4.コードを入力
コードを入力します。
選択した範囲を全角に変換する、という意味です。
コードです。
Dim selectedRange As Range
Dim cell As Range
Dim convertedText As String
Dim i As Integer
Dim charCode As Integer
‘ 選択した範囲を取得
Set selectedRange = Selection
‘ 選択した各セルに対して処理を行う
For Each cell In selectedRange
If cell.HasFormula = False Then ‘ 数式を持っていない場合に処理を実行
convertedText = “”
For i = 1 To Len(cell.Value)
charCode = AscW(Mid(cell.Value, i, 1))
If charCode >= &H21 And charCode <= &H7E Then
‘ 半角文字の場合、全角に変換
convertedText = convertedText & ChrW(&HFF00 + charCode – &H20)
Else
‘ 半角でない場合、そのまま追加
convertedText = convertedText & Mid(cell.Value, i, 1)
End If
Next i
cell.Value = convertedText ‘ 変換したテキストをセルに設定
End If
Next cell
コードを入力したら、コードの入力画面を閉じて下さい。
5.ボタンができた →範囲を選択 →ボタンをクリック
ボタンができました。
全角にしたい範囲を選択して、ボタンをクリックします。
6.全角になった
選択した範囲内の文字が全角になりました。
日付まで全角にできます。
実際の使用例
全角に統一したことで、フィルターをかけるときにも、複数選択する必要がなくなりました。
商品Bと商品Cが1つにまとまりました。
(株)と(株)など、複数表記になりがちなものも、1つにまとめられます。
これで集計が間違えにくくなりましたよね!
まとめ
エクセルで選択した範囲のセルの文字を全角にそろえるマクロを作る方法です。
1.「開発」タブをクリック →「挿入」をクリック →「ボタン」をクリック
2.新規作成をクリック
3.コードを入れる画面が出る
4.コードを入力
5.ボタンができた →範囲を選択 →ボタンをクリック
6.全角になった
これで、データをそろえるデータクレンジングができて、集計も正確にできますね!
同じようにマクロで全角→半角にしたいという方は、下のリンク先で紹介していますのでどうぞ。
→エクセルで選択した範囲のセルの文字を半角にそろえるマクロを作る方法
マクロを使うのが難しい方は、マクロを使わない方法で全角にする方法を使ったらいいです。
マクロを使わないで全角に一括変換したい方は下のリンク先へどうぞ。
コメント