
エクセルで関数を使って、住所から、都道府県、市区町村、丁目番地、建物名をそれぞれ抽出するにはどうしたらよいですか?
いま、C列に住所が入っています。
D列に、=LEFT(C3,4-SUM((MID(C3,3,1)={"都","道","府","県"})*1))という関数で都道府県を抽出しました。
F列に、=IF(E2="東京都",
IF(COUNT(FIND({"東村山","武蔵村","羽村市"},LEFT(I2,3))),
LEFT(I2,FIND("市",I2)),
LEFT(I2,MIN(FIND({"市","区","町","村"},I2&"市区町村",2)))
),
IF(COUNT(FIND({"今市市","四日市","八日市","廿日市"},LEFT(I2,3))),
LEFT(I2,FIND("市",I2,FIND("市",I2)+1)),
IF(IF(COUNT(FIND({"蒲郡市","大和郡","小郡市"},LEFT(I2,3))),"市",IF(COUNT(FIND({"余市郡","高市郡"},LEFT(I2,3))),"郡",MID(I2,MIN(FIND({"市","郡"},I2&"市郡",2)),1)))="市",
IF(COUNT(FIND({"札幌市","仙台市","千葉市","横浜市","川崎市","名古屋","京都市","大阪市","神戸市","広島市","北九州","福岡市"},LEFT(I2,3))),
LEFT(I2,FIND("区",I2)),
LEFT(I2,FIND("市",I2,2))
),
IF(COUNT(FIND({"佐波郡玉村","恵那郡岩村","東宇和郡野","杵島郡大町","北松浦郡鹿"},LEFT(I2,5))),
LEFT(I2,FIND("郡",I2)+3),
LEFT(I2,MIN(FIND({"町","村"},I2&"町村",FIND("郡",I2)+2)))
)
)
)
)
という関数を使って市区町村を抽出しました。
あとは、丁目番地と建物名を別々のセルに抽出したいです。
よきアドバイスをお願いいたします。
区切りに半角空いてるとかいうことはありません。
膨大な住所録を処理したいので、例外が多いのは使えません。
なかなか厳しい質問だとは思いますが、どうぞご教授くださいませ。よろしくお願いいたします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
具体的な関数を組み立てた訳ではないのですが、考え方をとりあえず述べたいと思います。
質問者様は市区町村間までの抽出ができたという事は、逆に言えば丁目と建物名を合わせた情報を抽出できているという事ですね。
そこで書かれている情報が
1-12-8
とか
5丁目17番203号
など色々なフォーマット(書き方)があると思いますので、これらを同一の書き方にできれば、抽出は比較的容易になると思います。
フォーマットの変換はSUBSTITUTEとワイルドカード(*)でできると思います
(参考:http://www.efcit.co.jp/cgi-bin2/exqalounge.cgi?p …)
この回答への補足
今、C2に住所が入っていて、L2に、
=RIGHT(C2,LEN(C2)-MIN(FIND({0,1,2,3,4,5,6,7,8,9},ASC(C2)&1234567890)-1))
という関数を使って、番地以降を抽出しました。あとは建物名だけになったのですが、どうしようか悩んでます。
No.1
- 回答日時:
> という関数を使って市区町村を抽出しました。
おつかれさまでした。
> 丁目番地と建物名を別々のセルに抽出したいです。
> 区切りに半角空いてるとかいうことはありません。
きついです。
「丁目」に関して可能性があるとしたら、日本郵便提供の郵便番号データ
http://www.post.japanpost.jp/zipcode/download.html
などとのマッチングくらいでしょうか。
番地・建物名は更に厳しいでしょうね。
法則性が一つもないでしょ?
ここに「必ず"番地"の文字」が入っているなら別ですが、
そうではない正式な住所も多数存在しますからね。
「膨大」がどの程度の量かわかりませんが、
力技で頑張るしかないのではないでしょうかね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
Excelで住所を2つ(町名迄と番地以降)に分けるには?
Excel(エクセル)
-
【Excel】 住所録の建物名を分ける方法
Excel(エクセル)
-
エクセルにおいて、住所データからマンション名のみを取り出したいです。
Excel(エクセル)
-
4
エクセルの関数で1つのセルに入っている住所を丁目までと番地以降に分けたい
Excel(エクセル)
-
5
住所録からマンション名以下を別セルへ
PowerPoint(パワーポイント)
-
6
住所録を市区町村、番地、建物名の3分割にする方法
Excel(エクセル)
-
7
エクセルで住所の混在する「丁目番号番地」を「-」に一括変換する方法ってありますか?
Excel(エクセル)
-
8
エクセルで「丁番地」を変換する方法を教えて下さい
Excel(エクセル)
-
9
Excelで1セル内の住所を市郡町街と丁目以下の地番等に分離する方法は?
Excel(エクセル)
-
10
【Excel】 住所の県、建物でセルを分けたい。
Excel(エクセル)
-
11
エクセルで住所を県と市・郡と町以降の住所に分割したい
Excel(エクセル)
-
12
文字列間にスペースを入れる関数はある?
Excel(エクセル)
-
13
エクセルで住所録の数字だけを取り出したいのですが・・・
Excel(エクセル)
-
14
【Excel】住所から市区町村名を抜き出す方法
Excel(エクセル)
-
15
所在地の市区郡だけを表示させたい。エクセル関数
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
「パラメータが少なすぎます。3...
-
5
エクセルで色の付いたセルを抽...
-
6
【Access】条件未入力時、全件...
-
7
access クエリ yes/no型のクエ...
-
8
PDFファイル/抽出許可され...
-
9
未審査請求包袋抽出表作成とは...
-
10
エクセル関数で住所から丁目番...
-
11
ACCESSのクエリー抽出条件にIIF...
-
12
【AccessVBA】レコードセットOp...
-
13
X-Ripperというフリーウェアに...
-
14
Excel 文字列から6桁の数値の抽出
-
15
ACCESSのフォームからレポート...
-
16
Triton X-100 bufferの作り方に...
-
17
Access サブフォームでの選択行...
-
18
前のレコードの値を自動で入れたい
-
19
ACCESSでVBAから選択クエリの抽...
-
20
(ACCESS)条件に応じて、テキ...
おすすめ情報
公式facebook
公式twitter