友人から「CSV形式ファイルを取り込むツールを作って♪」と依頼され、CSV形式ファイルのサンプルデータを渡されたところ、「問い合わせ番号」的な列に「5.82876E+11」と…。初めて見ると、なんだこれ?ですよね…💦
色々調べてみると、指数なる値(もしくは表示形式)になってしまっていることが判明。
早速調べた結果を備忘録していきます…
■ 動作環境
OS: Windows 8.1
Excel: 2013
■ 表示形式「指数」とは
指数に関する説明は、どのサイトも、誰の説明も分り辛い(笑)
私なりの説明は、こうです。^^
指数とは、累乗において、掛け合わせる回数のこと (例えば「aの2乗」の場合は「2」、「aの3乗」の場合は「3」が指数です!)
ただし、Excelでは、ある数字を「10のn乗」で除算した数値(仮にb)へ「E+n」という表示形式を組み合わせて「bE+n」と簡略表現することを「指数」と呼んでいる?
また、Excelでは、一定の条件下で、指数表記へ自動変換される
指数表記の一部「E」とは、指数を示す「exponent」の頭文字からきている?
■ 「指数」の例
まずこちらをご覧ください。
A列は、B/C列に入力した実際の値
B列は、セルの幅を少し狭くしたケース
C列は、セルの幅を余裕を持たせたケース
D列は、A/B/C列の桁数を表示
この動きからもお分かりいただけるとおり、入力された値の桁数に対してセルの幅が十分でない場合は、自動的に指数表記へ変換しアジャストされます。 (この例では、セルB5以降が該当)
ちなみにもっと幅を狭くすると「####」のように、指数表記も諦めて、「#」で表示されるようになります💦
また、セルの幅に余裕があっても、12桁からは、自動的に指数表記へ変換されます。 (この例では、セルC9以降が該当)
■ 常に「指数」表記にするには?
自動的に指数表記に変換されるのではなく、意図的に指数表記にするためには、該当セルに対して右クリック → [セルの書式設定] → [表示形式] で『指数』を指定することができます。
■ 「指数」表記を解除するには?
セルの幅が狭い場合は拡げる
[セルの書式設定] → [表示形式] で『数値」を指定する。
■ まとめ
いかがでしたでしょうか?
突然見るとビックリしますが、理屈が分かれば冷静に対処できると思います。
次回以降も、苦労した点を備忘録しようと思います。
コメント