• ベストアンサー

Excelの式の作り方について

deecyanの回答

  • deecyan
  • ベストアンサー率38% (89/233)
回答No.4

A1に日付がはいっているものとして B1に 下記の式をいれて セルの書式を 日付にしてください。 =IF(A1="","",IF(MONTH(A1)<3,DATE(YEAR(A1)+2,3,1)-1,IF(MONTH(A1)<9,DATE(YEAR(A1)+2,9,1)-1,DATE(YEAR(A1)+3,3,1)-1))) 3月未満の日付は その年の2年後の3月1日の前の日 9月未満の日付は その年の2年後の9月1日の前の日 それ以外は   その年の3年後の3月1日の前の日 としています

mikominashi
質問者

お礼

即座に使用できる数式をお示しくださり、ありがとうございます。 お礼申し上げ、至急使用させていただきます。 まずは御礼申し上げます。

関連するQ&A

  • エクセルの関数式の設定。

    セルB1~M1に月(1~12月)を入力しておきます。 セルA1に任意の日付を入力すると(例えば1/21と入力)セルB2~M2のうち対応するセル(C2(2月の下))に○印、その他のセルは空白になるように関数を使いたいのですが、どのように式をたてればよいか、分かるかた教えてください。 A列に任意の日付を入力すると、B~M列の対応する月のセルに○印が自動的に入れたいのです。 MONTH関数やDAY関数で月と日を別のセルに取り出すようにして、IF関数を使ってやってみても式をどうたててよいのか分からず、全然ダメです。 任意の日付が12月21日~1月20日の場合は1月に○       1月21日~2月20日の場合は2月に○       2月21日~3月20日の場合は3月に○ といった具合に、20日締めにしたいのです。 年度は気にしません。 よろしくお願いします。

  • エクセル 日付の参照の方法

    エクセルで、スケジュール表を作っています。 セルA4の行から1月1日~となっていきます。 日付の部分が、セルの表示では「1月1日」と出ているのですが fxの欄には「=A1」と出ます。 以下、「1月2日」→「=A4+1」、「1月3日」→「=A5+1」・・・です。 ちなみにA1には「2008年」と表示されますが、ここもfxの欄は「2008/1/1」となっており、 ここの年数を変えると自動で1年分の日付・曜日が変わるようになっています。 ここまで他の人が作ったので、どうやってこういう設定にしたのか分かりません・・・。 この状態で、祝日に該当する日だけ、その祝日名が出るような列を作りたいんですが、 IF関数で日付を参照しようにも、「IF(A4="1月1日","元旦","")」にしても 「IF(A4="=A1","元旦","")」にしても、うまく「元旦」と出ません。 (エラーにはならないんですが・・・。) こういう、セルとfx欄で出力される文字が違うようなセルを参照するには、どうしたらよいですか? 教えて下さい。

  • Excelで大変困っています。

    先ほども質問したのですが、自分の説明が悪く分かりにくかったようなので…。 Excelで日付の計算をしたいんですが、条件がありましてそれで困っています。条件は全ての月の一ヶ月の単位を三十日で計算する事です 例( 12月1日+30=1月1日    2月1日+30=3月1日    2月1日+40=3月10日) それとセルは三つまでしか使えません。 例えばA1セルに元の日付、B1セルにたされる値、C1セルにたされた結果の日付こんな感じでだしたいんですが、全然分からなくて相当悩んでいます。 ヒントだけでも教えて頂けないでしょうか? 分かりくい説明だったらすいません。 よろしくお願いします。

  • Excel(エクセル)自動入力と入力前非表示

    4月~12月を前年、1月~3月を今年とするために、 年セル=IF(MONTH(日付セル)<4,2017,2016) とした場合、日付セルが空欄の場合に表示させないようにする方法はありますか? また、後から行を挿入した場合に、年セル=IF(MONTH(日付セル)<4,2017,2016)と自動に入力される方法はありますか? ※ マクロやVBAは使えません。初心者です。 例 :   年   日付 A1 2017 1月20日  A2 2016 5月25日 A3    7月18日 ←後から挿入したセルに自動的に数式を入力したい。 A4 2017      ←まだ日付を入力していないのに、2017と表示される。非表示にしたい。 ※ 日付は、1/20というように、スラッシュで入力しています。自動的に月日になるので。 宜しくお願いいたします。

  • セルへの日付入力で指定期間のみ入力できるようにしたいのです。

    セルへの日付入力で指定期間のみ入力できるようにしたいのです。 2つの方法を知りたいのですが、 一つ目は A11-A12と並んだセルで両方とも任意の日付入力欄となっています。 まずA12に任意の日付を入力した場合A11に入力できる日付をA12より前は打てないようにしたい。 (例)A12に2010/01/20--A11には2010/01/19---× (例)A12に2010/01/20--A11には2010/01/25---○ (例)A12に2010/01/20--A11には2010/02/25---○ 二つ目は 指定のセルに入力当日の前月以前は打てないが入力日(月も)以降は打てる (例)セルへの入力日2010/01/20--実際に入力する任意の日付2010/12/30---× (例)セルへの入力日2010/01/20--実際に入力する任意の日付2010/01/21---○ (例)セルへの入力日2010/01/20--実際に入力する任意の日付2010/02/11---○ こんな制限はできるのでしょうか。 ご教授をお願い致します。

  • Excelで開始日と終了日を表示させたい

    Excel2002についてお願いいたします。 A1、B1、C1・・・のセルには日付が順番に入っています。 (例えば、1月1日、1月2日、1月3日、1月4日、1月5日・・・) A2、B2、C2・・・のセルには「○」が入っているセルと空欄のセルがバラバラに入っています。 (例えば、○、○、空欄、○、空欄・・・) 今、日付の下に○が入っているうちで一番早い日付と一番遅い日付を、「開始日」、「終了日」として表示させたいのですが、どうしたらよいでしようか? 上の例ですと、 開始日 1月1日 終了日 1月4日 と表示させたいのです。 よろしくお願いいたします。

  • 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日という結果を算出するのが目的です。 ダイレクトにできなければ、途中にいくつかの列を経由しても構いません。 よろしくお願いします。

  • Excel「もし2004年1月1日より前ならセルを空白にする」という式は?

    A1セルに日付データが入っています。 「もし、その日付が2004年1月1日より後なら、そのまま表示され、前ならば空白セルにする」という条件の式を作りたいのです。 一応、「=IF(A1>37987,A1,「偽の場合」)」こんな感じかと思うのですが、「偽の場合」のところは何を入力すればいいのでしょう? 37987は2004年1月1日のシリアル値と思い入れましたが、もし、そこも違っているのでしたら教えてください。

  • 同じ数字の時塗りつぶす エクセル

    Sheet1のA1セルからH1セルまでに日付が入っています(1月1日~1月7日) Sheet2のA1セルには赤、B1には白と文字入力しており、A2~B32までそれぞれ日付が入力してあります。(日付のダブりはありません) 例:A2~A9までは1月1日~1月7日 B10~B17は1月8日~1月15日といったような Sheet1のA1セルに日付を入力したときにSheet2の赤または白に日付が該当する場合にその色で自動的に塗りつぶすような動作はできないでしょうか? 例えばSheet1のA1セルに1月1日と入力した場合、Sheet2ではA列(赤)に1月1日と記載があった場合そのタブ1のA1セルが塗りつぶされるといった内容です。 お手数ですがご回答のほどよろしくお願いいたします

  • Excelで日付を来年の2013年にしたい

    Excel2010を使って来年の小遣い帳を作っています。 日付欄に「1/1」と入力したら「1日」と表示するようにユーザー設定をしています。 しかし、この場合のセルの値は「2012/1/1」になります。 来年用なので「1/1」と入力するだけで「2013/1/1」の値になるようにできないでしょうか? 最初のセルだけ「2013/1/1」と入力して「1日」と表示させるのですが、それ以降も「2013」を覚えさすことはできないでしょうか? 隣のセルに「=WEEKDAY()」関数で曜日を入力しているので「2013年」の値が必要なのです。 日付が続き番号ならオートフィルでコピーするのですが任意の日付入力です。 本当は「1」と入力したら「1日」、「5」と入力したら「5日」と表示させたいのですが・・・。(2013年の) どうしても毎回「2013/*/*」と入力しないとダメでしょうか? 宜しくお願いします。