EXCEL

Excel 日付入力 勝手に変換 されて困る! 1/5 分数 や R10.1 バージョン番号 部品の型番 を入力するには

Excelでセルに 日付入力 すると、Excelは自動で日付の書式に変更してくれます。

私は、仕事で使うとき、見積書・納品書・発注書・請求書など、帳票の右肩に日付を入れます。
現金出納帳や仕訳帳、入金記録、支払記録などでは、これはいつのイベントなのかが分かるように、レコード毎(1行毎)に日付を入れます。

あなたも多分そうしていると思いますが、入力はどのようにしているでしょうか?

Excelで 日付入力 をすることは、Excelを使う人なら誰でもやったことがあると思いますが、良いイメージを持っている人とそうでない人のどちらも居ると思います。
ある人は「少しの入力で自動で日付と認識してくれるので便利なんだよな!」と好感を持っている。 また他のある人は「勝手に変換されてしまって、毎回訂正するの面倒くさいんだよな」と不満を抱いている。と、受け止め方は人それぞれではないでしょうか。

例えば、優秀な後輩のエクセル君が、「先輩!これやっておきました!」と言ってくれたとき、「お~、ありがとう~」となるときと、「あっ!あ~、、、ありがとう」となるときのどちらも有るのと同じですよね。

そして、Excelの 日付入力 も、自動で変換してくれることが、良いときと余計なときとがあります。

もしそれが余計なことと感じているとき、時々ならまだしも、それが毎日かつ何回もとなってくると、使うたびに迷惑を被ることとなって、「もうやめて~!!」となってしまいますね。

この記事では、私がこれまでにExcelと長年付き合ってきた経験から、この問題に対応した、便利な使い方について、ご紹介したいと思います。

有り難迷惑にならないように、気をつけながら紹介していきます。

たかが 日付入力 に大袈裟な!? と思うかもしれませんが、頻繁に使う人は、塵も積もればで大きな効率化に繋がるかもしれませんので、是非最後まで記事を読んでいただいて、あなたの仕事に少しでも貢献できれば、私としても、とても有り難いです。

また、「えっ!そんな事も出来るの!!」とか「うわ!めっちゃ便利」というような、便利な使い方も、最後に紹介しますので、楽しみにしてくださいね。

それでは、まず、日付入力に関するExcelの動きについて、簡単なところからおさらいしておきましょう。

とても便利な? 日付入力 機能

超初歩的な話からですが、お付き合いください。

例えば、Excelの新しいシートのB2セルに、こんな風に入力したとします。

5/1

そして、あなたがEnterキーを押した瞬間に、セルには5月1日と表示されます。

日付入力

セルの表示は5月1日になり、数値の書式設定は標準からユーザ定義に変わりました。

これは、Excelが「入力された”5/1”は日付だろう」と判断して、セルのデータを日付勝手に変換し、数値の書式勝手に設定して、セルには5月1日と表示されるというものです。

では本当に日付データに変換されたか確認してみましょう。
B2セルの5月1日の数値の書式標準に戻してみましょう。 どうでしょうか、そこには45047という数値が表示されました。 この45047という数値は、5月1日(ここでは、2023年5月1日)を表す数値であって、1900年1月1日からの経過日数です。

Excelは、セルに”5/1”という文字を入力されたら、

「あっ!5/1は日付だ!」
「今年は2023年だから、2023年5月1日だな」
「1900年1月1日からの経過日数を計算すると45047」
「セルには45047をセットして、日付表示の月日表示の書式にしておこう」

という動きになるのです。

セルの書式を日付とすることでExcelが45047→2023年5月1日と読み替えて表示をしてくれるという仕組みになっているから、なのです。

なんかややこしそうと感じた方、大丈夫です、そんなのは知らなくても、十分にExcelを使いこなすことが出来ますから、サラッと流しておいてください。

さて、話を戻しましょう。

先ほどの例では、5/1と入力するとExcelは日付だなと判断して、書式を日付に設定してくれましたが、入力が5/0だとどうでしょうか。

試しに、先ほどのセルの隣のセルに、入力して試してみましょう。

これは、書式は標準のままで日付の設定には自動で変更されませんし、表示は5/0のままです。
更に5/32ではどうでしょうか?

これも、5/32のままで、日付への変更はされませんでした。

この様に、5/1など入力された時点で、Excelはカレンダーも考慮してから実際に存在する日付かどうかを判断して、変換できるときは変換してくれる、というなかなか賢いのです。

日付に変換とは、5/1をさっきの45047のような値に変えて値としてセットし、書式は日付の書式に設定します。 その結果、表示が5月1日と表示されるという動きをしているのです。

では、本当に正しいカレンダーで認識しているのかを確認するために、うるう年も認識できるか、試してみましょう。

先ほどの隣のセルに、2000/2/29と入力してみます。 ここで、先ほどとは違って西暦の年を付けていますが、省略すると今年になってしまい、閏年にならないからこのようにしています。(今年でないときは年も入力する必要があります)

知っての通り、2000年はうるう年、つまり、2月29日がありますので、Excelの処理が正しければ、日付だと判断して、書式を日付に設定し、日付の表示に変更されるはずです。

さすがは、Excelですね。ちゃんと日付と認識してくれました。 2月29日になるんじゃないの?と思ったかもしれませんが、それだと今年と間違うので、年からの表示になりますね。

本当に便利です。エクセルに日付を入力するときは、今年の日付の場合は、2023年5月1日と入力する必要は無く、5/1と入力すればことが済むわけですから。

日付表示 を5月1日 ではなく 5/1 (ゴ スラ イチ)と表示させたい

でも、ちょっと待ってください。

日付に変換してくれて良いんだけど、表示は5月1日ではなくて5/1と表示して欲しい。というときはどうしたら良いでしょうか?

Ctrl 1 でセルの書式ダイアログを表示
❷ ユーザー定義クリック
❸ Alt t で種類を選択して、m / d と入力し Enter

これで、5/1と表示されました。

なんだか面倒くさい、、、と思いましたよね。

一度やったら、次からはユーザ定義のリストに登録されますので、一番下に表示された m/d を選ぶだけでできます。

なぜ、こんな面倒なことになるのか

では、なぜこんな仕組みになっているのでしょうか。考えてみましょう。

Excelは表計算ソフトだ、ということは、あなたは知っていますか?

そう計算ソフト計算を目的にしているソフトウェアなのです。

例えば、3/23から5/1の間の日数を求める場合を考えてみましょう。

私は、割と計算は得意ですが、この計算をするときは、まず3月23日から31日の日数と4月の日数および5月の1とを足します。31ー23=8。4月は30。8+30+1=39として計算します。

もっと得意な人は、別の計算方法があるかもしれません。しかし、なんにせよ厄介です。この方法をたとえソフトウェアでも難しいのです。

そこで、すべてを日にしてしまうわけです。 1900年1月1日からの経過日数というのが、それです。

3/23は45008
5/1は45047
45047-45008=39

計算は、一発で完成です。

計算しやすいような仕組みとなっているからこそ、こんな面倒なことになっていたのです。

計算しやすいように、最初に入力された時点で日付であると判断したら、すぐに計算できるように、あらかじめ、経過日数に変換した値をセルに格納しておくという仕組みになっているのです。

日付入力 で勝手に変換されない ための 対策

そんな、説明されても、「5/1(分数)を入力したいのに。。。」とか、「部品の型番が5/1のものを勝手に日付にして貰っては困るよ。。。」とか、色々なケースで日付ではないものが日付に変換されて困ったことは、私の経験でも一度や二度ではないです。

この5/1だけではないんですよ。

アプリのバージョン文字列の R5.1.1 というのが勝手に日付に変換され、CSVで受け渡したら数字文字列になっていたということもありました。

では、どうしたら変換されなくなるのか。

明確に文字列だということを、Excelに知らせなくてはいけません。その方法は、

を先頭に付けるという単純な方法です。

5/1ではなく、’5/1と入力するのです。これは、この入力値は文字列ですよ。数値でもないし日付でもないですよ。勝手に変換してはいけませんよ。という、Excelへのメッセージなのです。

これさえ付ければ、書式を何に設定しようが、データは変換されません。

コメント

タイトルとURLをコピーしました