• ベストアンサー

エクセル 関数

REPLACEを使って電話番号にハイフンを2箇所いれるには(0001112222→000-111-2222) REPLACEでなくてもかまいません、素人でも解る方法があればお教え下さい。 あと10桁の番号でこの2パターン(ハイフンの入る場所が違う)→(0001112222→000-111-2222)(3344445555→33-4444-5555)を同時に処理する事は可能でしょうか?よろしくお願い致します。

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

  • ベストアンサー
回答No.3

【先頭2文字が03または06であれば00-0000-0000の形式、それ以外であれば000-000-0000の形式に変更する】場合、 =IF((LEFT(A1,2)="03")+(LEFT(A1,2)="06"),LEFT(A1,2)&"-"&MID(A1,3,4),LEFT(A1,3)&"-"&MID(A1,4,3))&"-"&RIGHT(A1,4)

その他の回答 (2)

  • YSNR-HRN
  • ベストアンサー率36% (40/111)
回答No.2

A1に元の番号があるとしてB1に「=LEFT(A1,3)&"-"&MID(A1,4,3)&"-"&RIGHT(A1,4)」と入力すると、A1の左から3文字-4文字目から3文字-右から4文字となります。 2パターンの同時処理は、番号にどちらのパターンになるか判別できる特徴があればできなくはないです。次のような感じになります。 「=IF(判別式,LEFT(A1,3)&"-"&MID(A1,4,3)&"-"&RIGHT(A1,4),LEFT(A1,2)&"-"&MID(A1,3,4)&"-"&RIGHT(A1,4)」 判別式がうまくできるかどうかによります。 判別式がうまくできない場合はC列を判別データ用とし3-3-4パターンのときは「1」,2-4-4パターンのときは空白とします。このとき、判別式は「C1=1」となります。 エクセル文字列操作関数 http://excel.onushi.com/function/letter.htm

vanilla333
質問者

お礼

お返事頂きありがとうございました。 今回時間がない為2回の操作で致します。 時間が出来ましたら判別式込みのやり方を試したいと思います。 ありがとうございました。

回答No.1

=LEFT(A1,3)&"-"&MID(A1,4,3)&"-"&RIGHT(A1,4) 2パターンを同時に処理することは可能ですが、 どちらのパターンの判断条件を明確する必要があります。 先頭2文字が03または06であれば00-0000-0000の形式、 それ以外であれば000-000-0000の形式に変更するなど。

vanilla333
質問者

お礼

お返事ありがとうございます。早速試みます。 【先頭2文字が03または06であれば00-0000-0000の形式、それ以外であれば000-000-0000の形式に変更する】←このように設定出来れば1回の操作で可能なのですか、出来ましたらそちらも方法もお教え下さい。よろしくお願い致します。

関連するQ&A