人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

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

●質問者: chatora
●カテゴリ:コンピュータ
✍キーワード:数字 関数
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● pahoo
●35ポイント

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

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


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

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

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

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

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


2 ● kaiton
●35ポイント

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

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フォームなどで、そのような事例は多いとも思います。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ