• ベストアンサー

エクセルで数値の間にハイフンを入れる方法

お世話になります。 エクセルで、11ケタの数字のあいだにハイフンを入れたいのですが、その入れ方がわかりません。 例: 11122334455 ⇒111-223344-55 調べると近いやりかたは見つかったのですが、なにかうまくいきません。 また逆にハイフンが入っている数値のハイフンの取り方も教えていだだければありがたいです。 例: 111-223344-55 ⇒11122334455 何卒よろしくお願いいたします。

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

  • ベストアンサー
  • msMike
  • ベストアンサー率20% (364/1804)
回答No.2

添付図参照

supermusic
質問者

お礼

すばらしい!!! できました!!!ありがとうございました!!!

その他の回答 (5)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.6

どのような目的でハイフン入りの文字に変換したり、そのハイフンを除きたいのかによって最も合理的な操作がありますが、すでに入力されている数字やハイフン入りの文字を数式などの補助列を使わず、そのままどちらかに統一したいような場合は以下の操作が簡便です。 11ケタの数字をハイフン入りの文字に変換したい場合は、対象セル範囲を選択して、セルの書式設定で表示形式をユーザー定義にして「000-000000-00」のように設定してご希望のハイフン入りの表示にしてから、ホームタブのクリップボードの右下のダイアログ起動ツールをクリックしてOfficeクリップボードを表示しておき、対象範囲を選択してCtrl+Cで「コピー」し、そのままOfficeクリップボードのコピーデータをクリックすれば、ハイフン入りの文字列データになっています。 逆にハイフン入りの文字列をすべて11ケタの数字に変換したいなら、Ctrl+Hで置換ダイアログを出して、検索する文字列に「-」、置換後の文字列には何も入力せず「すべて置換」します(これで数値データになっていますので、説の表示形式をG標準などにしてください)。

supermusic
質問者

お礼

すばらしい!! できました!ありがとうございました!!

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.5

>なにかうまくいきません。 A1に値があるとして =TEXT(A1,"000-000000-00") または =LEFT(A1,2)&"-"&MID(A1,3,6)&"-"&RIGHT(A1,2) として、出来た値をコピーしてA1に値として張り付ける。 >逆にハイフンが入っている数値のハイフンの取り方 方法1 置換で、"-"を""に置き換える 方法2 A1に値があるとして =SUBSTITUTE(A1,"-","")*1 として、出来た値をコピーしてA1に値として張り付ける。

supermusic
質問者

お礼

すばらしい!! できました!!ありがとうございました!!!

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.4

 質問者様がどの様なやり方でハイフンを入れたり無くしたりという事を実現させたいのかが今一つ不明です。  もし、セルに入力されているデータ自体は 11122334455 という数値のままとした上で、モニターや印刷の際に表示される見かけだけを 111-223344-55 に変えたいという事であれば、セルの書式設定の表示形式を[ユーザー定義]の #-######-## に設定されると良いと思います。  それを元に戻すには、セルの書式設定の表示形式を[標準]か[数値]に設定されると良いと思います。  又、もし表示される見た目だけではなく、セルに入力されているデータ自体を 111-223344-55 という文字列データに変換したいという事でしたら、関数を使って別のセルに出力し直す必要があります。  例えばA1セルに11122334455と入力されていて、そのA1セルに入力されている値を基にして、B1セルに111-223344-55という文字列データに変換した値を表示させるという場合には、B1セルに次の様な関数を入力して下さい。 =IF(A1="","",TEXT(A1,"#-######-##"))  又、例えばB1セルに 111-223344-55 と入力されていて、そのB1セルに入力されている値を基にして、C1セルに 11122334455 という数値データに変換した値を表示させるという場合には、C1セルに次の様な関数を入力して下さい。 =IF(A1="","",IF(ISNUMBER(SUBSTITUTE(A1,"-",)+0),SUBSTITUTE(A1,"-",)+0,"数値に変換出来ません"))  或いは =IF(A1="","",IFERROR(SUBSTITUTE(A1,"-",)+0,"数値に変換出来ません"))

supermusic
質問者

お礼

すばらしい!! できました!ありがとうございました!!

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.3

>例: 11122334455 ⇒111-223344-55 桁数が11の固定であれば表示形式で可能です。 "000-000000-00" >また逆にハイフンが入っている数値のハイフンの取り方も教えていだだければありがたいです。 >例: 111-223344-55 ⇒11122334455 入力された値が 111-223344-55 であれば数値ではなく文字列になります。 置換機能で - を文字無しに置き換えれば数値の 11122334455 に変化します。

supermusic
質問者

お礼

できました!ありがとうございました!

  • shintaro-2
  • ベストアンサー率36% (2266/6245)
回答No.1

11桁と固定されているのであれば、 表示形式を###"-"######## とすれば 123-45678901 と表示されます。 >また逆にハイフンが入っている数値のハイフンの取り方も教えていだだければありがたいです。 いろいろな方法があると思います。 例えば、 検索置換で”-”を削除するとか(この場合は文字列としての数字) 別のセルで =(left(a1,3)&mid(a1,5,8))*1 とすれば、数値として入力されます。

supermusic
質問者

お礼

すばらしい! できました!ありがとうございました!

関連するQ&A