こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

【エクセル】年月日の抽出

【エクセル】年月日の抽出

エクセルにて、行ラベル日付・列ラベル価格のピポットテーブルを作成したいのですが、
元になるCSVファイルの日付データが、【2009/12/28/ 22:52】と日時表記になっているため
うまくいきません・・・。

年月日のみ抽出しようと、他セルに=LEFT(セル番号,10)と入力したのですが、
【40175.9528】とシリアル値が出てきてしまいました。

どのようにすれば、【2009/12/28】のみを抽出できるのでしょうか。

エクセル初心者のため、説明がうまくできず申し訳ございません。
分かりにくい点あるかと思いますので、ご指摘ください。

よろしくお願いいたします。

投稿日時 - 2010-01-07 18:29:32

QNo.5575234

すぐに回答ほしいです

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

excelの日付って扱いにくいですよね。

さて、質問の件ですが、
【2009/12/28/ 22:52】がcell(A1)に入力されているとすれば
=DATE(YEAR(A1),MONTH(A1),DAY(A1))
で抽出できると思います。

投稿日時 - 2010-01-07 18:41:34

お礼

わ!できました(○´∀`○)
助かりました。
ありがとうございます・・・!!!

投稿日時 - 2010-01-08 09:48:19

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

A1セルに2009/12/28 22:52とあるとしたら次の式でもよいでしょう。
=TEXT(A1,"yyyy/mm/dd")
あるいは
=TEXT(A1,"yyyy/m/d")
なお、A1セルの表示を2009/12/28とするのでしたら、A1セルを右クリックして「セルの書式設定」を選択し、表示形式のタブで「日付」から2004/3/14を選んでもよいでしょう。ただしこの場合にはシリアル値は変わりませんのでセルの内容には時刻の内容が含まれたままです。
上のTEXT関数の場合には時刻の内容は含まれなくなりますね。

投稿日時 - 2010-01-08 06:51:18

お礼

表示形式をいちいち変えていたんじゃ時間がかかってしまうので・・・
自動で変わるような関数を他セルに入れてピポットテーブルに反映させたかったのです。
そして悲しいことに=TEXT(A1,"yyyy/m/d")ではエラーが出てしまいました(;;)
面倒なので原因は調べていませんが・・・

でも、表示形式を変えてもシリアル値が変わらないことは初めて知りました!
本当にいろんな関数があっていろんな方法があるんですね・・・
ありがとうございます。

投稿日時 - 2010-01-08 09:53:14

ANo.2

こんにちは
>【40175.9528】とシリアル値が出てきてしまいました。どのようにすれば、【2009/12/28】のみを抽出できるのでしょうか。
 シリアル値は整数部分が日付になり小数部分が時刻になりますのでcell A1 にデータがあるなら、セル書式を日付にした上で下記の式でもOkです。

=INT(A1)

投稿日時 - 2010-01-07 18:47:08

お礼

残念ながら、【2009/12/28 00:00】となってしまいました・・・
でも、シリアル値の謎が解けました☆
整数部分が日付で小数部分が時刻なんですね。
ありがとうございます!

投稿日時 - 2010-01-08 09:49:53

あなたにオススメの質問