『忠犬もちしば』のAIを育てるとグッズが貰える!>>

住所録で都道府県名と地区町村名が一つのセルに入っています。これを、左のセルに都道府県名、右のセルに市区町村名に分ける方法が分かりません。どなたかご存知の方がいらっしゃれば、その方法を教えてください。エクセル2003を使用しています。
例    セルA2  東京都千代田区大手町 → セルA1 東京都  セルA2 千代田区大手町

このQ&Aに関連する最新のQ&A

A 回答 (3件)

今晩は。


どの様なシートか分かりませんが参考までに書きます(別シートに作成も可能です)


フルの住所の書いてあるセルを仮にB1とします。
1.C1セルに『=IF(MID(B1,4,1)="県",LEFT(B1,4),LEFT(B1,3))』と入力
  これで都道府県名がC1セルに表示されます
2.D1セルに『=RIGHT(B1,LEN(B1)-LEN(C1))』と入力
  これで都道府県名以降の住所が表示されます
3.後は、下のセルに数式をコピーする
4.Sheet2に作成する場合はA1セルに『=IF(MID(Sheet1!B1,4,1)="県",LEFT(B1,4),LEFT(B1,3))』とB1セルに『=RIGHT(Sheet1!B1,LEN(B1)-LEN(C1))』となります。

数式の説明をしておきます
『=IF(MID(B1,4,1)="県",LEFT(B1,4),LEFT(B1,3))』は。
住所録の4文字目の文字が「県」であるかという判定し、そうであれば住所録の4文字目まで抜き出し、異なる場合は、住所録の3文字目まで抜き出します。
『=RIGHT(B1,LEN(B1)-LEN(C1))』は。
フル住所録セルから、都道府県セルの文字数を差し引いた文字列を表示させます。

他に、もっと簡単な方法があるかも知れませんが参考までに。
「エクセルで都道府県と地区町村を分ける方法」の回答画像2
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
数式の解説までつけていただきありがとうございます。
大変丁寧にご説明いただき感謝しております。
これで、作業が大変はかどります。最悪の場合は、「都道府県」をキリトリ、ハリツケしなければと思っていました。大変な作業になるところでした。
感謝しております。今後とも、会員の方の手助けにご活躍ください。

お礼日時:2011/10/04 07:59

 もし、必ずしも都道府県名が記入されていないデータも含まれている場合には、日本国内には、東京都府中市、広島県府中市、長崎県対馬市上県町、等々、市町村名や郡名、区画名等に、「都」、「道」、「府」、「県」の文字が含まれている例は珍しくありませんから、「都」、「道」、「府」、「県」の文字が現れる位置だけで、都道府県を判定したのでは、間違った結果が表示される恐れがあります。


 例えば、

対馬市上県町樫滝493番地1

という住所が入力されると、

県名: 対馬市上県
住所: 町樫滝493番地1

となってしまいます。
 ですから、もし、都道府県名が記入されていないデータも含まれている場合には、次の様にされた方が宜しいかと思います。

 今仮に、A2以下に元となる住所が入力されていて、B2以下に都道府県名、C2以下に市区町村以下の名称を表示するものとします。
 まず、適当な列(ここでは仮にSheet2のA列とします)に、次の様に都道府県名の一覧表を作成して下さい。

Sheet2のA1セルに   北海道
Sheet2のA2セルに   青森県
Sheet2のA3セルに   岩手県
Sheet2のA4セルに   宮城県
Sheet2のA5セルに   秋田県
Sheet2のA6セルに   山形県
Sheet2のA7セルに   福島県
Sheet2のA8セルに   茨城県
Sheet2のA9セルに   栃木県
Sheet2のA10セルに   群馬県
Sheet2のA11セルに   埼玉県
Sheet2のA12セルに   千葉県
Sheet2のA13セルに   東京都
Sheet2のA14セルに   神奈川県
Sheet2のA15セルに   新潟県
Sheet2のA16セルに   富山県
Sheet2のA17セルに   石川県
Sheet2のA18セルに   福井県
Sheet2のA19セルに   山梨県
Sheet2のA20セルに   長野県
Sheet2のA21セルに   岐阜県
Sheet2のA22セルに   静岡県
Sheet2のA23セルに   愛知県
Sheet2のA24セルに   三重県
Sheet2のA25セルに   滋賀県
Sheet2のA26セルに   京都府
Sheet2のA27セルに   大阪府
Sheet2のA28セルに   兵庫県
Sheet2のA29セルに   奈良県
Sheet2のA30セルに   和歌山県
Sheet2のA31セルに   鳥取県
Sheet2のA32セルに   島根県
Sheet2のA33セルに   岡山県
Sheet2のA34セルに   広島県
Sheet2のA35セルに   山口県
Sheet2のA36セルに   徳島県
Sheet2のA37セルに   香川県
Sheet2のA38セルに   愛媛県
Sheet2のA39セルに   高知県
Sheet2のA40セルに   福岡県
Sheet2のA41セルに   佐賀県
Sheet2のA42セルに   長崎県
Sheet2のA43セルに   熊本県
Sheet2のA44セルに   大分県
Sheet2のA45セルに   宮崎県
Sheet2のA46セルに   鹿児島県
Sheet2のA47セルに   沖縄県

 次に、B2セルに次の関数を入力して下さい。

=IF(SUMPRODUCT(ISNUMBER(FIND(Sheet2!$A$1:$A$47,$A2))*1),INDEX(Sheet2!$A$1:$A$47,SUMPRODUCT(ISNUMBER(FIND(Sheet2!$A$1:$A$47,$A2))*ROW(Sheet2!$A$1:$A$47))),"")

 次に、C2セルに、次の関数を入力して下さい。

=SUBSTITUTE($A2,$B2,)

 そして、B2~C2の範囲をコピーして、同じ列の3行目以下に貼り付けて下さい。

 以上です。
    • good
    • 0
この回答へのお礼

ありがとうございます。
大変複雑な数式で、私の理解を超えています。色々なケースを想定していただき大変ありがとうございました。時間をかけて理解を深めたいと思います。本当に凄い方たちがいらっしゃるのですね。私も、回答を頂いた方々に少しでも近づき、一人でも多くの方に貢献できればと考えております。
誠にありがとうございました。

お礼日時:2011/10/04 08:04

A2に都道府県から始まる住所が記載されているとして。



簡便法:
B2に
=LEFT(A1,3+(MID(A1,4,1)="県"))
C2に
=MID(A1,LEN(B2)+1,99)




#参考
実は都道府県名から始まっていないデータもある場合

簡便法:
B2に
=IF(OR(ISNUMBER(FIND({"都","県","道","府"},MID(A1,3,2)))),LEFT(A1,3+(MID(A1,4,1)="県")),"")
C2は同じ
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
B2とC2中のA1をA2に変えれば、成功しました。4文字の県もありますが、少し手を加えれば大丈夫でした。深夜にもかかわらず、ありがとうございました。

お礼日時:2011/10/04 07:50

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング