関数で住所から文字の所だけ読み取って、番地の数字を表記しない方法は?

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2008/11/01 13:54:52
  • 終了:2008/11/03 10:27:49

回答(2件)

id:pahoo No.1

pahoo回答回数5960ベストアンサー獲得回数6332008/11/01 15:00:13

ポイント35pt

Excel関数で正規表現を使えるようにします。

まず「正規表現Excelアドイン」をインストールしてください。


セルA1にある住所から、数字(アラビア数字、漢数字、全角/半角)以降の部分文字列を削除する関数は以下の通り。

=RegExpReplace(A1,"([0-90-9一二三四五六七八九〇]+)(.*)$","")

ただし、「四日市市」のように漢数字を含む市町村名があると、それも削除してしまいます。

正確に地番のみを削除したいなら、市町村名テーブルと比較しながら消去していく必要があります。

これは、かなり面倒な作業ですし、市町村名はしばしば変わります。最初から、都道府県名、市町村名、それ以降、地番、ビル・マンションの5つを別々の列に格納するのが良いでしょう。

id:kaiton No.2

kaiton回答回数259ベストアンサー獲得回数342008/11/01 16:07:14

ポイント35pt

以前に逆の質問(番地だけ取り出したい)がありました。

http://q.hatena.ne.jp/1220339318


その応用でExcel アドイン: 郵便番号変換ウィザードをインストール

住所→郵便番号→番地なし住所 の順番で変換すればできます。

ただし、元の住所が「大阪市・・・1-2-3」でも「大阪府大阪市・・・」のように

都道府県名がついたり、必ずしも一致しない事例があります。

参考)

http://www.morgan.co.jp/kiso/5excel-5.htm

http://121ware.com/qasearch/1007/app/nec.jsp?005843


#1の回答者pahoo様もおっしゃっているように、元のデータを入力する段階から番地を

分けておくのがベストだと思います。

実際に、住所を入力するWebフォームなどで、そのような事例は多いとも思います。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません