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

エクセルで、「○○-△△-××××」というようにハイフンで区切られた電話番号が入力されたセルに対し
市内局番だけ(または最後の番号だけ)を抜き出したいのですが、そういうことは可能でしょうか?

よろしくお願いします。

A 回答 (6件)

No.4のarukamunです。



012-345-6789
0123-45-6789

012や0123を求めたいのであれば、

=LEFT(A1,FIND("-",A1)-1)

345や45を求めたいのであれば、

=MID(A1,FIND("-",A1)+1,FIND("-",A1,FIND("-",A1)+1)-FIND("-",A1)-1)

6789を求めたいのであれば、

=MID(A1,FIND("-",A1,FIND("-",A1)+1)+1,LEN(A1))

は正常に動作すると思います。
もしかすると、345-6789や45-6789を求めたいのでしょうか?

=MID(A1,FIND("-",A1)+1,LEN(A1))

で良いですね。
取りあえず、上記の方法は、携帯電話等の長い電話番号でも問題ないと思います。もし、これ以外のものを求めたいのであれば、詳細にどこを求めたいのかを補足してください。
    • good
    • 1
この回答へのお礼

おおお!ありがとうございました~~~!!!
うまくいきました!!
こんなに早く解決できるとは思ってもいなかったです。
本当に感謝です!
ありがとうございました!!

お礼日時:2003/08/04 15:42

A1 に 03-1234-1234


B1 に
=MID(A1,SEARCH("-",A1,1)+1,24)
を入力すると
1234-1234
と表示されます。
    • good
    • 0

こんにちは



ワークシート関数だけで可能ですよ。
A1セルに電話番号があって、ハイフンが半角であれば、

=LEFT(A1,FIND("-",A1)-1)

で良いですね。
最後の番号とは質問の××××
の所でしょうか。
であれば、

=MID(A1,FIND("-",A1,FIND("-",A1)+1)+1,LEN(A1))

とかで良いですね。
恐らく△△も求めたくなると思うので、

=MID(A1,FIND("-",A1)+1,FIND("-",A1,FIND("-",A1)+1)-FIND("-",A1)-1)
    • good
    • 0
この回答へのお礼

回答ありがとうございます!!
最後の番号(××××)は教えて頂いた方法で抽出できました!

そしておっしゃる通り、△△の部分である市内局番(と市外局番)も抜き出したいのですが

012-345-6789
0123-45-6789

というように、全国の電話番号が混在しているため
上記の方法だと上手くいきませんでした。。。
何かよい方法はありますでしょうか?

うまく説明できず申し訳ないです。
よろしくお願いします。

お礼日時:2003/08/04 12:31

最後の 4桁だけならば、


A1に入ってるとして
=RIGHT(A1,4)
とすれば、取得できます。
    • good
    • 2
この回答へのお礼

ありがとうございました!さっそく試してみます!

お礼日時:2003/08/04 12:38

データの内容は無視し、単にハイフン「-」を区切り記号と見做して切り出すだけなら、InStr関数、Mid$関数を使用すれば容易です。


データの妥当性を検証するなら、対応辞書を作りマッチングする必要があります。(市販のパッケージアプリにありそうですが・・・)
    • good
    • 0

VBAを使えば(少なくとも)可能。

    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています