プロが教えるわが家の防犯対策術!

Excelに入力された住所録から、区だけを抜かした住所を抜き出したいと思っています。

例)
新宿区西新宿1-1-1 → 西新宿1-1-1
渋谷区本町2-2-2 → 本町2-2-2

住所録には23区全ての住所が入っており、件数もかなりの量があるので、できれば計算式で何とかできたら・・・と思っております。
(置換だと23回しなければいけないのが面倒で・・・)

もし、ご存知の方がいらっしゃいましたら、教えて下さい。
宜しくお願い致します。

A 回答 (6件)

=MID([対象セル参照],FIND("区",[対象セル参照])+1,100)


でどうでしょう?

※式の最後の数値100は特に深い意味はありません。
住所の桁数の最大の値を入れておけばOKです。
    • good
    • 0
この回答へのお礼

ありがとうございます!!!!
sacomanさんの方法でできました!!!
感激です☆
本当に助かりました♪
ありがとうございました!!!

お礼日時:2003/10/10 16:34

#2、#3です。



関数でやると
=RIGHT(A1,(LEN(A1)-FIND("区",A1,1)))

というような感じでできます。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます!

色々なやり方があるんですね。
うーむ。。。関数は無限大。。。

どうもありがとうございました☆☆

お礼日時:2003/10/10 16:46

置き換えを使ってやるなら


「*区」で検索・置換しましょう。
まぁ問題は町名に「区」が入っているようなのがあったらそれもひっかかってしまうことですが。

関数でやるならこんな感じ
=MID(A1,FIND("区",A1,1)+1,LEN(A1)-FIND("区",A1,1))
対象文字列(この場合はA1セル)の左から数えて最初に「区」が出るところまでの文字数を数えて、それ以降の文字だけ抜き出すという式です。
この場合だったら区区という区名がない限り対応できます。
    • good
    • 0
この回答へのお礼

置換えはワイルドカードを使えば簡単にできたんですね!!!

関数も、丁寧にご説明頂きとても良くわかりました。
助かりました!
ありがとうございます☆☆

お礼日時:2003/10/10 16:44

#2です。


訂正です。

下記のコードだとD列ではなくB列に新しいデータが入力されます。

すいませんでした。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。

vbaはちょっと高度過ぎて。。。
計算式で頑張って見ます。
ありがとうございました!!!

お礼日時:2003/10/10 16:33

vbaでもいいですかね?



●1行目から10行目までとしました。
●データが入ってるのがA列としました。
●新しいデータをD列に入れるものとしました。

For i = 1 To 10
Jusyo = Cells(i, 1)
Mojisuu = Len(Jusyo)
Cells(i, 2) = Right(Jusyo, (Mojisuu - (InStr(1, Jusyo, "区"))))

Next
    • good
    • 0

置換の方が楽だと思いますけど・・・



置換前を「区」、置換後は「」(何も入れない)ですると、
区という漢字だけが消えます。

23回もしなくていいですが・・・。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

説明が悪かったみたいですね。
「区」という漢字を消したいわけではなくて、「○○区」を消したいのです。。。
ということは、23回置換えをしなければならないという事になりますよね。。。?

お礼日時:2003/10/10 16:18

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