• ベストアンサー

Excel2000で英数字の表示がおかしくなる

仕事でExcel2000を使っています。(OSはWindowsXPです) 商品のコードに英数字5桁のコードを使用しているのですが、Excelで編集する時に表示がおかしくなるものがあります。 例えば、 「1E101」→「1.00E+101」 のようになります。 セルの書式設定で最初から「文字列」にしてから入力すれば問題ないのですが、人からデータを受け取って処理する際、既に上記のようにおかしくなっているものが多くて困ります。 しかもデータの件数が多いので、おかしくなったものを探して一つ一つ修正するのは物凄い時間がかかるので、あまり現実的ではありません。 一度おかしくなってしまうと、セルの書式設定を変えても元に戻りません。 「1F101」「1A101」のように、「E」を含んでいなければ問題ありません。 「E」を含んでいても、おかしくなるのは上記の例のように文字列の2番目以降に一つだけ「E」があり、他が数字の時だけのようです。(それも、数字によっておかしくなる時とならない時がある) これはExcelの不具合でしょうか? 大量のデータを手っ取り早く元に戻す方法はありませんでしょうか? ご存知でしたらご教授ください。 よろしくお願いします。

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

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.2

Eと数字の組み合わせは指数表示の数値として扱われます。 セルの書式設定を文字列にするか、Shift+7を先頭につけて'1E101と入浴してください。 大量の場合は =IF(ISTEXT(A1),A1,LEFT(A1)&"E"&TEXT(LOG(A1),"000")) として表示したものをコピーして値として貼り付けてください。

Stella_Maris
質問者

お礼

ありがとうございます。 そういう仕様だったのですね。 教えていただいた関数で、正しく表示させることができました。助かりました。

その他の回答 (1)

  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

>これはExcelの不具合でしょうか? 不具合ではありません。 Excelでの「数値の表示方法の一つ」なので、そのように変換されて仕舞います。 (エクセル2000ヘルプより抜粋) ○ 数値の入力に関するヒント 数値として扱われる文字  Excel では、次に示す数字と特殊記号の組み合わせが数値として扱われます。 0 1 2 3 4 5 6 7 8 9 + - ( ) , / $ % . E e 数値の前のプラス (+) 記号は無視されます。また、数値にピリオド (.) が 1 つだけ含まれる場合は、小数点として扱われます。上に示す数字および特殊記号以外の数値と文字の組み合わせは、文字列として扱われます。 標準表示形式での数値の表示  セルの表示形式が既定の [標準] 表示形式の場合、数値は、整数 (789)、小数 (7.89)、または指数 (7.89E+08) として表示されます。セルの幅より長い数値は指数として表示されます。[標準] 表示形式では、小数点と "E" や "+" などの文字を含む 11 桁までの数値が表示されます。12 桁以上の数値を使用する場合は、組み込みの指数形式またはユーザー定義の書式を指定できます。

Stella_Maris
質問者

お礼

不具合ではなかったのですね。勉強不足でした… ご回答ありがとうございます。 参考になりました。

関連するQ&A

  • Excelの表示で1.0022E+11?

    Excelで『100220246008』や『10464830000F』など数字とアルファベットの文字が混じっている列があります。 これ列をどうしても【文字列】のしたくて、列全体をコピーし書式設定で【文字列】にしたところ『10464830000F』はそのままでしたが、『100220246008』は『1.0022E+11』になってしまいました。 元の列のデータ表示形式は【ユーザー定義;00000000000#】になっていました。 これらの数字をそのままにして【文字列】の表示形式にするにはどうすればいいのでしょうか? ※【文字列】;セルの左側によるかたち 質問がややこしくなってしまいすみませんが、どなたか教えてください。よろしくお願いします。

  • Excelで数値→文字列変換で指数表示になったものをいっぺんに直したい

    Excelについての質問です。 他のシートからコピー&ペーストした13桁の数字の羅列データ(JANコードまがいのものです)をまた別のシートの同様のデータと文字列としてマッチングをしようとしています。 ただ、コピペ元のデータが数値と文字列が混在していてコピペ後にセルの書式設定で列を一括で文字列に設定すると「2.01E+12」のように指数表示になってしまうものがありました。 一つずつダブルクリックすれば元の数字に戻るのですが、なにしろ数が多く面倒なものでなんとかいっぺんに指数表示から元の数字に変換することができないものでしょうか。 ちなみにOSはWin2000、Excelも2000を使用しています。 今回はコピペしてしまった後の対処方法をお尋ねしていますが、コピペ時にこうすれば良いというような回避方法もありましたら併せてご回答頂ければ幸いです。

  • エクセルの条件つき書式を別のセルに適用させる

    お世話になっております。m(_ _)m エクセルに「条件つき書式」という機能があります。 これは、「設定をしたセルの書式」を制御するものですが、条件の指定に使うセルと書式を設定したいセルが別の場合は、どのようにすればよいのでしょうか?可能なのでしょうか? やりたいことは、A1のセルに入っているデータが8桁なら書式を「00000000(ゼロ8個)」とし、9桁なら「000000000(ゼロ9個)」というようにしたいのです。 このような設定をしなければならない理由は、このセルに入るデータは桁数が8桁か9桁で、数字か文字か決まっていないデータが入ります。 例)00123445   E0123456   012345678   Z12345678 等 「E0123456」や「Z12345678」が入る場合は文字列としてデータが扱われてもかまわないのですが、「00123445」や「012345678」は「数値」として扱いたいのです。 「00123445」の場合、数値としてこの数字を表示したければ書式を「00000000(ゼロ8個)」とすればよいと思います。 しかし、このセルには9桁の「012345678」というデータが入る可能性があります。このデータも数字として扱いたいので「000000000(ゼロ9個)」とすればよいとなります。 しかし、ゼロ9個の書式設定をしてしまうと、8桁の数字が「000123445」と表示されてしまいます。それでは困ります。 8桁は8ケタ、9桁は9ケタで、0から始まる数字を表示したい場合、どのようにすれば表示できるでしょうか? 長くなりましたが回答をお願いします。

  • 指数表示しない方法

    アクセスデータをエクセルに変換する時、文字列(1D00051)がはいているセル一部が指数表示になってしまいます。 書式設定でいくら文字列に変更しても変わらないです。 指数表示を元の文字列に戻したいですがなかなかできません。 資料一部を添付しますので 宜しくお願い致します。

  • エクセル2000 異なるセルをくっつけて表示

    こんばんは。 毎度どうもすみません。 「エクセル2000 異なるセルをくっつけて表示」について質問します。 次のような文字があり、日付、曜日、時間は書式設定により表示されてます。(設定を解除すると数字の羅列になる。)   A列  B列  C列   D列   E列 1 09/20 木  10:00  山田  名古屋 2 この表あるそれぞれの文字をひとつのセルに改行して表示させるにはどうすればいいでしょうか?  09/20  木  10:00 に  山田 さん 名古屋 で 会いましょう 上記のようにしたいのです。 「&」記号とchar(10)記号を試してみましたが、日付などが数字になりうまく表示されません。関数では無理でしょうか? やはりVBAかな。 方法があれば教えてください。 

  • エクセルで英数字を合計するやり方

    エクセルで小文字のアルファベットと数字が一緒に入っているセルの数字だけを合計するやり方を教えて下さい。 例えば、 a1b1c1 a1b1c1 上記のような2つのセルに英数字がある場合、 a2b2c2 となるように合計するやり方を知りたいです。

  • エクセルのセル内の表示の仕方について、詳しい方ご教授願います。自分は表

    エクセルのセル内の表示の仕方について、詳しい方ご教授願います。自分は表示上前ゼロは’をつけてセルに数字を入力することで0のついた文字として入力出来ると認識していました。又、他に方法が無いとも思っていたのですが、先日「’」なしで前ゼロ(0023とか)の数字が入っているセルを見つけました。右クリックでセルの書式設定を見ると標準になっています。同じ列にそのレコードのデータを特定する前ゼロ付きの4桁の数字が入っています。が、新たに前ゼロで数字入力をしようとすると、’を付けずには前ゼロにならないのです。(セル書式設定を標準ではなく数値にすれば見かけ上の前ゼロに出来ることは知っているのですが・・・)元から入っていたものはあくまでもセル書式標準で上記のような状態になっています。コピーして値を貼り付けにつても元からのものと自分が入力した前ゼロつき数字とでは、 ’のあるなしの違いは変わりません。どのようにしたらきれいな前ゼロだけの数字の入力が出来るのでしょうか?どなたかご存知の方よろしくお願いします。

  • 英数字は後ろから何文字目まで?

    エクセルで、前側は数字、中臍は平仮名と漢字、後側は英数字の文字列が、複数のコラムに沢山存在します。 後側の後側は英数字の文字列は重要なので、赤くしたいのですけれど、後ろからカウントしていって何文字目までが英数字であるかを知りたいのですが、どなたか教えて下さい。お願いします。

  • Excel2013で切り取り禁止

    Excel2013です。 シート上でセルや行、列などをコピー、ペーストした場合は、コピー元の書式や入力規則などはそのままです。 コピーではなく切り取りした場合は元の書式や入力規則などが変わってしまいます。 データを他の場所へ移したいとき、コピペしてくれたら問題ないのですが、社内では切り取りでデータを移す人もいるので、元の設定が変わってしまい、困ってます。 いい方法はないのでしょうか? VBでも構いません。 どなたかExcelに詳しい方、教えてください。

  • エクセル 関数 001 002と文字列で表示した

    お世話になります。 XP/ エクセル2003 使用です。 エクセルの関数で、 数字を3桁で数字を表示したく 下記のように関数を組みました。 (セルの書式は、文字列にしています) 001の場合  =IF(A1="","","001") とし、001が問題なく返ってきます。 次のセルに、002と連番を振っていきたいので  =IF(A2="","",B1+1) としましたが、   2  (002ではない) と返ってきます。(書式は文字列) 002、003、004・・・と続けていきたいのですが、 どのようにすればよろしいでしょうか? ご多用中恐れ入りますが、 よろしくお願いします。

専門家に質問してみよう