• ベストアンサー

エクセルについて

エクセルで、生年月日を一つのセルに入力してあるデーターを年、月、日の3つに分けるにはどの関数を使えばいいのですか? 2006 1 1 と一つのセルに入力してあるので、セルの書式によって2000年1月1日と表示されています。 これを 年    月    日 2006   1     1 という風に一つずつのセルに分解したいです。分解できる関数などはありますか? すいませんが、何かいい方法を教えてください。

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

  • ベストアンサー
  • maron--5
  • ベストアンサー率36% (321/877)
回答No.3

A B C D 1 2006/1/1 2006 1 1 B1=YEAR(A1) C1=MONTH(A1) D1=DAY(A1) または、 B1=--TEXT(A1,"yyyy") C1=--TEXT(A1,"m") D1=--TEXT(A1,"d")

その他の回答 (2)

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.2

A1に 2000年1月1日 という日付データがある場合は  =YEAR(A1)  =MONTH(A1)  =DAY(A1) ただ「2000 1 1」と入力して書式で2000年1月1日と表示とありますが、「2000 1 1」では日付データとは見なされないはずでは? 日付が文字列で入っている場合は  =LEFT(A1,FIND("年",A1)-1)*1  =MID(A1,FIND("年",A1)+1,FIND("月",A1)-FIND("年",A1)-1)*1  =MID(A1,FIND("月",A1)+1,FIND("日",A1)-FIND("月",A1)-1)*1 ですね

  • toshi_2000
  • ベストアンサー率30% (306/1002)
回答No.1

YEAR(),MONTH(),DAY()関数を使用すればできます。

関連するQ&A

  • エクセルで生年月日を入力すると

    エクセルで生年月日を入力したいんですが、 昭和57年1月1日 と入力したいんですが、 57/1/1と入力すると、 「1957年1月1日」と表示されてしまいます。 セルの書式設定→「日付」→「平成○年○月○日」と設定をすると、 「昭和32年1月1日」と表示されてしまいます。 *昭和で入力する方法はありませんか? もしできないのであれば、「57/1/1」と表示させるには、どうしたらいいか、教えて下さい。

  • excelで期間内の年齢を表示する関数を教えてください。

    excelで期間内の年齢を表示する関数を教えてください。 例えていうと、生年月日を入力すると、2008年4月1日~2009年3月31日の期間に何歳かをセルに表示するようにしたいんです。 アドバイスよろしくお願い致します。

  • エクセル 日付の関数を入力する方法

    エクセルの関数を使って、以下の表示をするやり方を教えて下さい。 シートを32個用意しています。 (1)エクセルで一つ目のシートのセルに「2009年3月」と入力する ("2009" "年" "3" "月" はそれぞれ別のセルにしています) (2)次のシートに「2009年3月1日」と表示する (3)さらに次のシートに「2009年3月2日」と表示する つまり、最初のシートに「2009」「3」と入力するだけで、 1日から31日まで用意したそれぞれのセルにそれぞれの年月日が 表示されるようにしたいのです。 どなたかエクセルに詳しい方教えて下さい。 宜しくお願い致します。

  • ワード差込印刷 出てくるエクセルデータは・・・ 

    エクセルのデータをワードに差込印刷しています。  データのセル書式は「標準」になっていて、「3.6」と入力してあります。(名前がわからないのですが)上にあるアドレスバーにみたいな関数式が出るところで見ても、「3.6」です。ところがワードの差込をすると3.6000000っと(いくつ0があったか解らなくなってしまいましたが)0がいっぱいついてしまいます。0を無くする方法を教えてください。  もうひとつ・・・セル書式が「日付」でエクセルのセルには「2005年5月」と表示されていて、バーには「26/05/2005」となっているデータをワードに差し込んだら「26/05/2005」のほうが出たのですが、これを「2005年5月」のほうで表示させる方法を教えてください。

  • エクセル 関数のあわせ技 

    お世話になります。 最終目的は年齢表示です。 生年月日の元データは他システムからCSVカンマ形式で出力されたものをエクセルで表示しているため、問題箇所があります。 ・年月日のいずれかが一桁の場合、「空白」+「半角数字」+「年月日」となっています。   例えば、昭和20年5月1日   の場合は         昭和20年 5月 1日 となっています。(数字は半角です) ・元データのほとんどはテキスト形式なのですが、一部日付データ形式があります。   セル表示は「元号+年月日形式」ですが、数式バーは西暦表示です   例えば、昭和24年12月11日 とセル上は表示されますが、         1949/12/11   と数式バーでは表示されます。 まず、生年月日データに混じっている空白を消すため、SUBSTITUTE関数を使って別の列に書き出しました。 =IF($J3="","空白行",SUBSTITUTE(AM3," ","")) これで、昭和20年 5月 1日は昭和20年5月1日になりました。 その後、DATEDIF関数で年齢を表示させました。 =IF(ISERROR(DATEDIF(AJ3,today(),"Y"))=TRUE,"",DATEDIF(AJ3,today(),"Y")) ただし、日付データの 1949/12/11 のセルは、18243 になってしまいました。 これでも年齢計算はできるのですが、生年月日確認用に使いますし、後で印刷時に利用するデータですので、「テキスト形式」として、昭和24年12月11日 と表示させたいのです。 上記の関数式に別の関数を組み合わせればいいのだろうと思いましたが、うまくいきません。 どうか、よろしくご教示ください。  

  • Excelにおける日付

    仕事用に他部署からデータをExcelでいただいたのですが、1万件近くのデータが入っており、このデータの日付が全て7桁の数値として入力されているため、活用できず困っています。 Excelに詳しい方のお知恵を拝借したく、質問に参りました。 行いたい処理は、Excelのあるセルに「20050301」という7桁の数字が入力されている場合、これを別の1つのセル内に「2005年3月1日」という日付として認識させたいのです。 そういったことはできるのでしょうか? セルの書式で、表示形式をユーザー定義・####年##月##日とすれば、「2005年03月01日」と表示させることは簡単にできますが、そうではなく、7桁の数字を日付として認識させ、日付関数を使って日数の計算をしたいのです。 A1セルに「20040301」、B1セルに「20050301」と入力されているとしたら、これをそれぞれ「2004年3月1日」、「2005年3月1日」と認識させ、その間の日数が365日という結果を算出するのが目的です。 ダイレクトにできなければ、途中にいくつかの列を経由しても構いません。 よろしくお願いします。

  • エクセル 年齢を計算するような関数はありますか?

    エクセル2003です。初心者です。 現在名簿を作成しています。 更新日 2012/5/24 名前     生年月日       年齢 鈴木・・・   昭和60年5月1日       ↑のような名簿を作っています。 生年月日はすでに入力されているのですが、更新日を入力すると、 その更新日現在の年齢を表示できるような関数はないでしょうか? たとえば、今日なら2012/5/24のようにあるセルに入力したら 名簿の人の2012/5/24現在の年齢がでるようなものです。 よろしくお願いいたします。

  • エクセルの日付表示の書式設定

    こんにちはお世話になっております 教えていただきたいのは、エクセルの日付表示についてです。 条件としてはセルに日付を入力したときに以下のように表示したいです。 8/1と入力したとき  2006年 8月  1日 8/13と入力したとき 2006年 8月13日 10/3と入力したとき 2006年10月 3日 様はセルの中で数字が1桁でも2桁でも位置が会うようにしたいです。 配置で均等とかにしてもずれてしまうので、何か言い方法があればと思うのですが、教えてください なお、年月日になるようにするのはセルの書式設定でユーザー定義で[DBNum3]ggge"年"m"月"d"日"の設定で表示させています。 mmやddにしてしまうと08などになってしまうので、そうではなく 8と表示させたいです。 分かりにくい説明ですが、教えてください。

  • エクセル関数のデータ表示がすぐされない

    エクセルで或るセルにデータを入力したら別のセルにデータ表示されるように「関数」を使っています。 例えばA1のセルに生年月日を入力したら隣のB1に満年齢が表示されるというようにです。 以前はA1に生年月日を入れたらすぐにB1に満年齢が表示されていたと思うのですが、いつの間にやらすぐには表示されなくなりました。 そして、保存をしようとすると、入力したセルの関数が変換表示されて、保存されます。 以前のように、入力したらすぐに関数の値を表示するには、どうすればよいのでしょうか?

  • エクセル 曜日に対応する担当者を表示するには?

    毎週月曜日と木曜日に行っている、あるイベントの予約表を作成しています。 予約表のイメージですが、A4用紙の片面に次の項目が入ります。 (1)年月日 (2)曜日 (3)担当者名(担当者は月曜日・木曜日別の人) (4)予約表 1枚/日で、8~9枚/月必要になるので、同じ書式のものを9枚分作り、 毎月末に、二月先の分を1か月分プリントしようと考えています。 (1)については、 1枚目の年月日用のセルに二月先の第一月曜日の年月日を入力。 2枚目の年月日用のセルに、「1枚目の年月日+3」と設定して→次の木曜日を自動表示。 3枚目の年月日用のセルに、「2枚目の年月日+4」と設定して→翌週の月曜日を自動表示。 4枚目の年月日用のセルに、「3枚目の年月日+3」と設定して→翌週の木曜日を自動表示。 5枚目の年月日用のセルに、「4枚目の年月日+4」と設定して→翌々週の月曜日を自動表示・・・。 という方法で、一枚目の第一月曜日を入力すれば、2~9枚目までは自動的に表示されるというやり方にしました。 (2)については、曜日用のセルにWEEKDAY関数を使いました。 9枚とも曜日用のセルにWEEKDAY関数を入れて、表示されるやり方にしました。 (4)については、毎回変更することはないので、9枚とも同じ表を入れました。 問題は(3)です。 (2)の曜日に対応して、担当者を表示するためにはどうすればよいのでしょうか。 宜しくお願致します。 上記でお分かりかと思いますが、エクセルは素人です。 もし、(1)、(2)についてももっとスマートな方法がありましたら、教えてください。

専門家に質問してみよう