• ベストアンサー

住所データの編集の仕方

エクセルで下記のような編集をしたいんですが、 関数を教えて頂けないでしょうか? 例)神奈川県横浜市西区中央1-1-1 中央ビル1F 東京都中央区丸の内1-1-1 丸の内1F     A        B        C         D 1  神奈川県  横浜市西区  中央1-1-1   中央ビル1F 2  東京都   中央区    丸の内1-1-1   丸の内1F A 都道府県 B 市町村区 C 番地等 D ビル名 このように分けるにはどうしたら良いでしょうか? 困ってます。お力添え宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • redowl
  • ベストアンサー率43% (2140/4926)
回答No.3

パチっ、 (一休み)×10 終了 C1セルに 次式 (C1の式を D1に組み込んだら 長くなり文字数オーバーで不可) =SUBSTITUTE(A1,IF(OR(MID(A1,4,1)="県"),LEFT(A1,4),LEFT(A1,3)),) ※ A1データから 都道府県 名を削除した文字データ D1セルに 次式 =CHOOSE(IF(OR(NOT(ISERR(SEARCH("*市*区",C1,1))),NOT(ISERR(SEARCH("区",C1,1)))),1, IF(NOT(ISERR(SEARCH("*市",C1,1))),2, IF(NOT(ISERR(SEARCH("*町",C1,1))),3, IF(NOT(ISERR(SEARCH("*村",C1,1))),4,"")))), LEFT(C1,SEARCH("区",C1)),LEFT(C1,SEARCH("市",C1)),LEFT(C1,SEARCH("町",C1)),LEFT(C1,SEARCH("村",C1))) 式解説 CHOOSE関数で ◯◯市△△区 や  ◇◇区 の場合 1、 ▽▽市なら2、 ■■町なら3、 ●●村なら4 番目を選択、 選択先で C1データの 先頭から市区町村名を抽出 なお、この式では市区町村の漢字混じり地名は考慮してません。 ______________ ●番地部分は 「B1とD1のデータ文字数の和」と ビル名の前の「スペース文字」  を利用すれば、抽出出来そう。 ●ビル名は 、Search関数で  検索キーワードに " *"  スペース(半角か全角)にワイルド文字*(アスタリスク)で、抽出出来そう・・・・・ ______________ 別な処理方法で 地道に 検索置換で、 住所データーに  検索「県」 →置換 「県,」  「◯◯◯」 → 「◯◯◯,」  で、兎に角 、カンマ区切りにして  最終段階で  メニューの 「データ」>「区切り位置...」  をするとか どれだけデータがあるかで、・・・・・・時間の掛からなさそうなのを選択。

その他の回答 (3)

  • redowl
  • ベストアンサー率43% (2140/4926)
回答No.4

前回の続き ビル名前が 必ず入っている。(かつ、 スペースが 全角1文字分で)という条件で E1セルに =MID(A1,LEN(B1)+LEN(D1)+1,FIND(" ",A1)-LEN(B1)-LEN(D1)) F1セルに =RIGHT(A1,LEN(A1)-SEARCH(" ",A1)) _______________________ B,D,E,F列に抽出表示後、コピーし「値」ペーストを 別列に行う。

ninnin1115
質問者

お礼

色々、有難うございました。 早速やってみたところ、都道府県と市町村区は分割対応できました。 その後の市町村区からビル名まではうまく分割できなかったのでこれは手入力になりそうです。

  • redowl
  • ベストアンサー率43% (2140/4926)
回答No.2

#1の訂正 =IF(MID(A1,4,1)="県",LEFT(A1,4),LEFT(A1,3)) orを削除。 最初、都道府県が3文字の場合で書いていた名残り 4文字の県に気づいてから、消すのを忘れたということで・・・・

  • redowl
  • ベストアンサー率43% (2140/4926)
回答No.1

幾つ住所データがあるのか? 膨大なら、「数式」様様になるであろうが・・・ 仮に住所が A列に入っているとしたら 都道府県 単独表示なら B列に下式を ( B1に入力後、ドラッグ) =IF(OR(MID(A1,4,1)="県"),LEFT(A1,4),LEFT(A1,3)) 神奈川県、和歌山県、鹿児島県は4文字 この三県以外は3文字なので抽出出来るでしょう。 次は、 市区町村。  区だけの場合、市&区の場合、町の場合、村の場合  ここで問題なのが 市区町村という漢字が 含まれている時にどうするか?  例 四日市市、 町田町、 村雨村..... いつきゅうさ~~ん。 一休み一休み。  Z Z z..........

関連するQ&A

  • エクセル2003によるsumifに複数バージョン

    エクセル2003で以下の条件の関数を作成したいと考えております。 教えて頂けないでしょうか? A列、B列、C列、D列があり。 求めたいのは、【A列が「100」に等しい かつ (B列に「東京」という文字が含まれる または C列に「横浜市」が含まれる)場合のD列の和】になります。 A    B    C     D 100 東京都  三鷹市  1200 100 神奈川県 横浜市  2000 200 東京都  三鷹市  1200 100 京都    京都市  1000 100 神奈川県 ああ横浜  100 の場合、計算したいセルには1200+2000+100の3300が表示されるようにしたいです。 SUMIF関数を使いましたが、うまくできません。 また2007ではない為SUMIFS関数もない状態で困っています。 教えて頂けませんでしょうか?

  • エクセルで住所録管理データベースで

    エクセルで住所録管理データベースで (例) C列         D列 東京都台東区上野   1-234-1 神奈川県横浜市山手  2-84-6 埼玉県草加市弥勒   51-98 と入力されてますが A列にC列から 県名を抽出 B列に市・区名を抽出を 関数を使ってできないでしょうか? 又、C列の県名と市・区名を消したいのですが

  • エクセルの配列

    エクセルの配列を使用しての関数がうまく出来なくて困っています。    A   B  C 1  1  1  東京都墨田区 2  1  1  東京都神奈川区 3  1  2  東京都杉並区 4  1  2  神奈川県横浜市 5  1  3  神奈川県川崎市 6  1  3  東京都多摩市 7  2  1  岩手県 8  2  1  大阪府 9  3  2  兵庫県 10  3  2  京都府 と並んでいます。 ここでA列=1 且つ B列=1又はB列=2 且つ C列が"東京都"という文字を含んでいる の総計を計算したいのですが(上の状態ならば「3」) {=SUM(SUMPRODUCT(IF(A1:A10=1,1,0))*(IF(OR(B1:B10=1,B1:B10=2),1,0))*(ISNUMBER(FIND("東京都",C$1:C10))))} と関数を入れても正しい値が出ません。どこがおかしいのでしょうか? 作業列を使わずに求めたいです。 どなたかご教授宜しくお願いします。

  • EXCELのコピーについて・・・

    3つのセルに入力してある情報を1つのセルにまとめてコピーする事は可能でしょうか?? 例えば・・・A1のセルに神奈川県 B1のセルに横浜市C1のセルに本牧って入力してあるとしてそれをD1のセルに神奈川県横浜市本牧となるようにしたいんです。 あと・・・もしA1~A50までに「東京都」から始まる住所が入力されていたとしてそのA1~A50までの全てのセルから「東京都」という文字だけ削除する事って 可能でしょうか??? ちょっと分かりづらい説明ですみません。 どうかお願いします!!!

  • 別テーブルにあるデータを部分一致で選択するためにはどうしたらよいでしょ

    別テーブルにあるデータを部分一致で選択するためにはどうしたらよいでしょう。 申し訳ありません基本的なSQLを教えてください。 テーブルAに住所、テーブルBに市区町村名と市区町村コードがあり、テーブルAに当該市区町村コードを付けたしたいのですが、どうやってテーブルAとBをマッチさせればよいのでしょうか 具体的に言えば テーブルA内の住所カラムが以下のようなものを含んだデータだとします。 神奈川県横浜市中区XX-XX 東京都港区赤坂XXX ・ ・ ・ テーブルBには市区町村名カラムと市区町村コードカラムがあります。 中央区,0011 港区,0012 ・ ・ 横浜市中区,0033 横浜市南区,0034 ・ ・ (一応注釈ですがCSVのイメージだと思ってください) この2つのテーブルから合致したものに対し 神奈川県横浜市中区XX-XX,0033 東京都港区赤坂XXX,0012 という形で抽出したいのですがどのようにしたら良いのでしょうか (東京の”中央区”など重複する可能性のあるものはデータ側で対応しますので重複しないと考えて結構です) よろしくお願いいたします。

  • 住所の一部が合致する場合を抜き出して番号をつけたいのですが、 可能でしょうか。

    エクセルで、 住所の一部が合致する場合を抜き出して番号をつけたいのですが、 可能でしょうか。 具体的には、 住所リスト: 東京都港区台場~ 東京都葛飾区立石~ 東京都荒川区荒川~ 神奈川県横浜市西区~ 埼玉県さいたま市~ 上記に対し、 東京都港区=3番 東京都荒川区=4番 埼玉県さいたま市=5番 と一部が合致する値に番号をつけたいのです。 Vlockupでうまくいかないのですが、 教えていただけないでしょうか。 とても困っています。 何卒、よろしくお願いいたします。

  • Excel VBAで・・・

    こんにちわ。VBA初心者ですが、よろしくお願いします。 下記のような表からの値の取得(値の走査)の処理を考えているのですが、どうも1つ1つのセルを比較して取得するやり方しか考えつかなくて、マクロの実行時間が長くなってしまいます。。。 A列  B列   C列   D列 関東 千葉県 千葉市 中央区 関東 東京都       渋谷区 関東       横浜市 東北 福島県 福島市 関西             伏見区 北陸       新潟市 (A列にはエリア、B列には県、C列には市、D列には区が設定されてます。) 入力値がB,C,D列に全て一致した行のA列を返却させたいと思っています。 例えば、神奈川県横浜市港北区と入力した場合、関東を返して欲しいです。 ただし、空白のセルの箇所は見ない(何でも構わない)ため、 東京都新潟市中央区と入力した場合は北陸を返して欲しいのです。 私が思いつくのは、県を比較して、一致or空白なら次の列(市の比較)へ行き、不一致なら次の行で同じ処理を行うやり方しか思いつきません・・・ 1つ1つの比較以外に何かやり方はございますでしょうか? ExcelのFind関数などの利用も考えたのですが、空白の場合にうまく動かないので。。。 宜しければアドバイスをお願いします。

  • 検索2列で一致した個数を表す関数

    エクセル2000にある表1を元に表2を作成しようとしています。 表1 A列:「都道府県」 B列:「市区町村」 C列:「フラグ」 表2 D列:「都道府県」 E列:「件数」 F列:「フラグ数」 表1は既に値が入っていて、ある条件を見たすとC列(フラグ)に"○"がつきます。レコード自体が増える可能性はありますが、増える場合は一番下の列に追加される形で増えます。 表2はD列は既に値(都道府県名)が入っていて変わることはありません。E列とF列を関数で制御したいと思っています。(マクロは使用不可) E列は表2のE列に一致するA列の個数 F列はEの個数の中でC列のフラグが"○"の個数です。 E列は「COUNTIF」で書けましたが、 F列の関数が分かりません。 分かる人がいましたら、教えて下さい。 よろしくお願いします。 <表1>   A列   B列    C列   都道府県 市区町村  フラグ   --------------------------- 1 東京都   新宿区 ○ 2 東京都   豊島区 3 東京都   渋谷区 4 神奈川県  横浜市  ○ 5 神奈川県  厚木市  ○ <表2>   D列   E列    F列   都道府県 件数   フラグ数   ----------------------------- 1 東京都  3     1 2 神奈川県 2     2

  • Excel データを部分一致で抽出して表示したい (関数 または VBA)

    まずは下のサンプルデータを見ながら本文を読んでください。 Excelの関数(lookup か vlookup) か VBAを利用して、 Sheet2のセルA列にデータを自動的に表示したい と思っています。 Sheet2のセルA列に表示したいデータは、Sheet1のセルAの情報です。 例えば、Sheet2のセルB1が「静岡県」の場合は、「営業2部」という文字が Sheet2のセルA1に表示されるようにしたいと思っています。 つまり、Sheet1のセルB が Sheet2のセルB の内容と 部分一致した場合に、Sheet2のセルA列に 該当データ(Sheet1のセルA)を 抽出して表示するということをやりたいと考えています。 どうぞよろしくお願い致します。 サンプルデータ ◆Sheet1 参照元となる表 ___|___セルA___|________セルB ---------------------------- 1 | 営業1部 | 東京都千代田区 ---------------------------- 2 | 営業2部 | 静岡県 ---------------------------- 3 | 営業2部 | 山梨県 ---------------------------- 4 | 営業3部 | 東京都渋谷区 ---------------------------- 5 | 流通1部 | 神奈川県 ---------------------------- ◆Sheet2 データを埋めたい表 ___|____セルA_____|_______セルB ---------------------------- 1 |________________| 静岡県富士市大淵 24 ---------------------------- 2 |________________| 東京都千代田区丸の内1-8 ---------------------------- 3 |________________| 大阪府大阪市中央区南船場1―15 ---------------------------- 4 |________________| 神奈川県横浜市 ---------------------------- 5 |________________| ※以下 セルBには500件ほどの都道府県データあり。 6 7 ・ ・

  • Excel 住所分け

    A1 大阪府泉南市信達童子畑20 埼玉県吉川市中野338 東京都足立区鹿浜6-26-10 B1        C1      D1  大阪府       泉南市    信達童子畑20 埼玉県       吉川市    中野338 東京都       足立区    鹿浜6-26-10 都道府県/市区郡/町名・番地 と三つに分けたいです。 どうやったらできますか。

専門家に質問してみよう