住所番地を数字から漢数字に変換する方法
Excelを使って、住所に含まれる番地の数字部分を1~9の漢数字に変換し、0はそのまま残したい場合があります。この記事では、SUBSTITUTE関数を使用してすべての数字に対応する方法を解説します。
VLOOKUP関数によっても可能ですが、複雑になるのでSUBSTITUTEの方が良いでしょう。また、単に変換するだけであれば当ページ下部の変換ツールを使用して変換することもおすすめします。
数字と文字の混ざったセルについては漢数字化するNUMBERSTRING関数は使用できません。
方法: SUBSTITUTE関数を使った変換
SUBSTITUTE関数を用いて、住所の中の数字(例: 1, 2, 3, …)を対応する漢数字(例: 一、二、三、…)に置き換えます。
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,”1″,”一”),”2″,”二”),”3″,”三”),”4″,”四”),”5″,”五”),”6″,”六”),”7″,”七”),”8″,”八”),”9″,”九”)
データ例
A列に住所を入力し、B列でSUBSTITUTE関数を使用して番地を漢数字に変換する例を示します。
| A | B | |
|---|---|---|
| 1 | 元の住所 | 変換後の住所 |
| 2 | 東京都新宿区1-2-3 | =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,”1″,”一”),”2″,”二”),”3″,”三”),”4″,”四”),”5″,”五”),”6″,”六”),”7″,”七”),”8″,”八”),”9″,”九”) |
| 3 | 大阪府大阪市4-5-6 | =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A3,”1″,”一”),”2″,”二”),”3″,”三”),”4″,”四”),”5″,”五”),”6″,”六”),”7″,”七”),”8″,”八”),”9″,”九”) |
| 4 | 福岡県福岡市7-8-9 | =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A4,”1″,”一”),”2″,”二”),”3″,”三”),”4″,”四”),”5″,”五”),”6″,”六”),”7″,”七”),”8″,”八”),”9″,”九”) |
数式の解説
- SUBSTITUTE(A2,”1″,”一”): セルA2の文字列から数字の「1」を漢数字の「一」に置き換えます。
- SUBSTITUTE(…,”2″,”二”): 同様に「2」を「二」に置き換えます。
- SUBSTITUTE(…,”3″,”三”): 同様に「3」を「三」に置き換えます。
- この手順を「4」から「9」まで繰り返してすべての数字を置き換えます。
結果例
以下のように、A列の住所の数字部分がB列で漢数字に変換されます。
| A | B | |
|---|---|---|
| 1 | 元の住所 | 変換後の住所 |
| 2 | 東京都新宿区1-2-3 | 東京都新宿区一-二-三 |
| 3 | 大阪府大阪市4-5-6 | 大阪府大阪市四-五-六 |
| 4 | 福岡県福岡市7-8-9 | 福岡県福岡市七-八-九 |
| 5 | 北海道札幌市2-1-9 | 北海道札幌市二-一-九 |
注意点
- SUBSTITUTE関数の入れ子が増えるため、入力が多い場合には処理が複雑になることがあります。VBAを使う方法も検討してください。
- 住所に英字や記号が含まれる場合、それらを変換対象にしないよう注意が必要です。
- 「0」はそのまま残すため、SUBSTITUTE関数では特に処理を加える必要はありません。
JavaScriptによる漢数字変換ツール
以下のTextAreaに列ごとコピーして貼り付けてください。漢数字に変換されますので、結果をエクセルにそのまま張り付けることで使用できます。
まとめ
SUBSTITUTE関数を活用することで、住所中の番地を簡単に1~9まで漢数字に変換できます。住所データの見栄えを整えたり、特定の形式にデータを統一したい場合に便利です。