- ベストアンサー
シリアルに変換されません
Windows Vista excel2007です。 セルE21に4月24日と入力しました。 入力の仕方は セルの書式設定→表示形式→日付→3月14日 です。 セルB21に =DATEVALUE(E21) と入力したのですが、#VALUE! となってしまいます。 どうすれば宜しいのでしょうか。教えてください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>セルE21に4月24日と入力しました。 >入力の仕方は セルの書式設定→表示形式→日付→3月14日 です。 そのセルにはすでにシリアル値として日付が入っています。 そのセルを、表示形式→標準(G)、と変更すると、41347 と表示されますよね。 表示形式を変えても、セルに入っている値や種類(数値または文字列)が変わるのではなく、表示だけが、かわるんです。 一方、DATEVALUE関数は、"2013/9/9"や、"5月20日"といった文字列を、シリアル値に変換するための関数です。 「41347」という数値を、DATEVALUE関数の引数にしたため、エラーとなっています。 もし、そのシリアル値が欲しいなら、「=E21」、これだけで良くなります。
その他の回答 (3)
- asciiz
- ベストアンサー率70% (6803/9674)
すみませんANo.2訂正です、入力したのが「4月24日」なら、シリアル値は「41388」でした。(「41347」は2013/3/14) ----これだけだと何なので追記---- エクセルで、セルに文字列で「4月24日」と入力したとき。 エクセルが自動的に、 →これは日付を表している →それならば日付値(シリアル値)に変換し、 →書式設定を「m"月"d"日"」に設定しよう と言うところまで、やってくれてしまいます。 この変換をしないこともあります。 例えば、「8月50日」など、存在しない日付では、上記機能は働きません。 セルに文字列として入るので、表示位置も左寄せになります。(数値やシリアル値の入っている日付表示のセルは、デフォルトで右寄せになります) 今回の混乱の原因は、自分で書式設定をする前に、既にエクセルによってシリアル値に変換されてしまっていた、ということなんじゃないかと思います。 なお例えば、セルE21に「 '4月24日」 と、アポストロフィを付けて強制的に文字列入力をすれば、「=DATEVALUE(E21)」により、41388と表示されます。
お礼
asciiz さん、度々ありがとうございます。
- Moryouyou
- ベストアンサー率41% (140/334)
E21には文字列の設定のうえで日付を入れるようです。 日付形式で入力してしまうと、自動的に日付形式になってしまったりするので留意してください。
お礼
Moryouyou さん、ありがとうございます。
- kawais070
- ベストアンサー率52% (2242/4283)
B21には、単に=E21と入力しておいて、セルの書式設定を「数値」にしておくだけかと。
お礼
kawais070 さん、ありがとうございます。
お礼
asciiz さん、ありがとうございます。