
エクセルで関数を使って、住所から、都道府県、市区町村、丁目番地、建物名をそれぞれ抽出するにはどうしたらよいですか?
いま、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で質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの数式で教えてください。 3 2023/06/06 10:13
- Visual Basic(VBA) エクセルの数式で教えてください。 1 2023/07/31 15:49
- MySQL うまくいきません教えてくださいお願いしますSQLです。クエリ構文です。 1 2023/07/07 12:39
- MySQL SQLです。こんな感じですか?あってますか? うまくいきません教えてくださいお願いします 1 2023/07/08 15:27
- MySQL 下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 神奈川県の市区町村の一覧。ただ 3 2023/05/01 18:01
- MySQL 下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 日本の全市区町村を人口密度が低 1 2023/06/18 19:51
- Excel(エクセル) エクセルの数式で教えてください。 2 2023/06/06 13:57
- Visual Basic(VBA) ローマ字、ハイフン付きの並び替え ローマ字抽出方法 Excelマクロ 4 2022/04/01 14:10
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/11 14:50
- Access(アクセス) アクセスで教えてください。 住所一覧から 都道府県 市区町村 以下住所の3パターンに分けたいですが、 4 2022/06/10 23:22
このQ&Aを見た人はこんなQ&Aも見ています
-
Excelで住所を2つ(町名迄と番地以降)に分けるには?
Excel(エクセル)
-
エクセルにおいて、住所データからマンション名のみを取り出したいです。
Excel(エクセル)
-
【Excel】 住所録の建物名を分ける方法
Excel(エクセル)
-
-
4
エクセルで住所と建物名を分けるには?
Excel(エクセル)
-
5
住所録からマンション名以下を別セルへ
PowerPoint(パワーポイント)
-
6
住所録を市区町村、番地、建物名の3分割にする方法
Excel(エクセル)
-
7
エクセルの関数で1つのセルに入っている住所を丁目までと番地以降に分けたい
Excel(エクセル)
-
8
ExcelやAccessで住所と番地を分けたい
その他(悩み相談・人生相談)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル VBA メール本文に指定...
-
エクセルで、抽出したデータだ...
-
X-Ripperというフリーウェアに...
-
サイホンの原理
-
「パラメータが少なすぎます。3...
-
PDFファイル/抽出許可され...
-
mlvから音声を抽出したい。
-
AdvancedFilter 検索 複数条件
-
ACCESSのクエリー抽出条件にIIF...
-
Access の SQL で、Aがなかっ...
-
Excel 文字列から6桁の数値の抽出
-
Accessで、条件に一致するレコ...
-
access クエリ yes/no型のクエ...
-
access2000 クエリの抽出条件...
-
Access2010クエリ抽出条件(Like)
-
ACCESS クエリ 条件以外のレ...
-
「混合物の分離」という範囲で1...
-
エクセル関数で住所から丁目番...
-
Photoshopについて教えてください
-
ムラヲサ(市町村長)は 当番制...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで、抽出したデータだ...
-
X-Ripperというフリーウェアに...
-
access クエリ yes/no型のクエ...
-
ACCESSのクエリー抽出条件にIIF...
-
Excel 文字列から6桁の数値の抽出
-
未審査請求包袋抽出表作成とは...
-
PDFファイル/抽出許可され...
-
PDFファイルから特定の文字を検...
-
AccessのWHERE句において、変数...
-
エクセル VBA メール本文に指定...
-
「パラメータが少なすぎます。3...
-
【AccessVBA】レコードセットOp...
-
アクセス 同じフィールド(テキ...
-
Access チェックボックスを利用...
-
ACCESS クエリ 条件以外のレ...
-
Accessの選択クエリの抽出条件...
-
Access の SQL で、Aがなかっ...
-
【エクセルVBA】 A1セルを参照...
-
エクセル関数で住所から丁目番...
-
コンボボックス全ての値を取得...
おすすめ情報