IF関数で日付~日付を表示する方法とは?

このQ&Aのポイント
  • IF関数を使って給与日に応じた支払対象期間を表示する方法について説明します。
  • 給与日が7日の場合は、先月の16日から月末までが支払対象期間です。
  • 給与日が22日の場合は、当月の1日から15日までが支払対象期間です。
回答を見る
  • ベストアンサー

IF関数で「日付~日付」と表示させたい

月2回(原則7日と22日)、給与があります。 給与日が7日(週末、祝日がかぶるとその前日になる)の場合、 その支払対象期間は先月の16日~月末までです。 (例:給与日が5/7/2012の場合、その支払対象期間は4/16/2012-4/30/2012) 給与日が22日(週末、祝日がかぶるとその前日になる)の場合、 その支払対象期間は当月1日~15日までです。 (例:給与日が5/22/2012の場合、その支払対象期間は5/1/2012-5/15/2012) そこで、例えば 給与日のセルに5/7/2012(週末にかぶる場合は前日)と入力すると 次のセルに自動で(4/16/2012-4/30/2012)と表示され、 給与日のセルに5/22/2012(週末にかぶる場合は前日)と入力すると 次のセルに自動で(5/1/2012-5/15/2012)と表示されるようにしたいです。 そこで、IF関数を使い、(I1のセルに給与日(5/7/2012)が入力されているとします) 論理式:   DAY(I1)<15 真の場合:  MONTH(I1)-1&"/16/2012-"&DATE(YEAR(I1),MONTH(I1),1)-1 偽の場合:  MONTH(I1)&"/1/2012-"&MONTH(I1)&"/15/2012" と入力したところ、 偽の場合はよいのですが、真の場合には 4/16/2012-41029 と月末の日付がシリアル値で返ってきてしまいます。 どうしたら、41029が日付表示になってくれるのでしょうか・・。 宜しくお願いいたします。

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

  • ベストアンサー
  • mtaka2
  • ベストアンサー率73% (867/1179)
回答No.1

TEXT 関数を使えば、シリアル値を文字列に変換できます。 > DATE(YEAR(I1),MONTH(I1),1)-1 この部分を、 > TEXT(DATE(YEAR(I1),MONTH(I1),1)-1, "m/d/yyyy") にしてください。

chocica
質問者

お礼

できました!!!感動しました。 本当にありがとうございました。

関連するQ&A

  • 【Excel2000】土・日曜日を考慮した日付+α

    現在セルB1には『A1に入力した日の月末日付+月末休日の場合は前日』が出るようにしてあります。 セルA1 = 日付 セルB1 = IF(WEEKDAY(DATE(YEAR(A1),MONTH(A1)+1,0))=1,(DATE(YEAR(A1),MONTH(A1)+1,0))-2,IF(WEEKDAY(DATE(YEAR(A1),MONTH(A1)+1,0))=7,(DATE(YEAR(A1),MONTH(A1)+1,0))-1,DATE(YEAR(A1),MONTH(A1)+1,0))) ここに『A1が25日以降の場合は翌月20日+翌月20日が休日の場合は後日』という設定を加えたいのですが、可能でしょうか?  ・A1 = 2011/07/10 → (結果) B1 = 2011/07/29(金)  ・A1 = 2011/07/25 → (結果) B1 = 2011/08/22(月) どうしても不可能であれば別セル(C1など)でも構いません。

  • Excelの日付を求める関数について質問です。

    毎月20日が給与支給日で、土日祝日の場合はその前日(ex:20日が日曜→18日金曜)が支払日になるように関数で求めたい時、どのような関数を使えばよいのでしょうか。 例えばIF関数を使って、 =IF(今月の20日が土日祝日の場合,土日祝日の前の平日,20日) というようにする場合の(論理式)と(真の場合)の関数を教えてください。 他の関数でも大丈夫です。 PCはWindows7、Excelは2010です。

  • 日付関数を教えてください。

    エクセルで、 セルA1に月の締め日を、セルB1に採用日を入力した場合に、 セルC1に最初にくる締め日の初日を表示する関数を教えてください。 なお、月の締め日の入力には、数字の他に「月末」という表現をする場合がありますが出来るでしょうか。 例 セル A1(締め日)が 10日で、B1(採用日)が 5月16日の場合   セル C1(最初に来る締め日の翌日)は 6月11日 となります。 よろしく、お願いいたします。  

  • エクセルIF関数で

    IF関数で真の場合はあるデーターを自動入力しまして、そして偽の場合の件で質問なのですが、 そのセルに偽の場合は手入力したいというばあい、 いったいどう関数を入力したらよいでしょうか? ちなみに手入力したいのはアルファベットの文字群です。 =IF(E3="","",○○○) E3が空欄ならば空欄にせよ!そうでなければ・・・○○ この○○の部分にどのように入力したらそのセルが手入力可能になるのでしょうか? 仕事で早急に使うのでもしおわかりの方いらっしゃればどうか教えてくださいませ。 それともこういう関数は無理でしょうか?

  • IF関数の計算式について教えてください

    以下の式の場合、「真の場合」として扱われません。 [条件] セルA1=0.9 セルA2=0.9(=0.6+0.3で入力) [計算式] =IF(A1-A2>=0,"真","偽") 通常の計算であれば「0」となるため、「真」が返るはずなのですが 「偽」が返ってしまいます。 「真」が返る方法ありますか?

  • 3ヵ月後の日付を自動計算しようと思っているのですが、上手くいかなかった

    3ヵ月後の日付を自動計算しようと思っているのですが、上手くいかなかったのでご質問させていただきます。 3ヵ月後の日付をエクセルで自動的に計算させようと思って、いろいろ試行錯誤しているのですが、上手くいかなかったので、ここに質問させていただきました。よろしくお願いいたします。 で、単純に3ヵ月後を計算させようと思い、ExcelのWorkday関数等を利用して、以下のような式を考えました。 =WORKDAY(DATE(YEAR(A1),MONTH(A1)+3,DAY(A1)-1),1,B1:B38) ここで、セルA1には基準日を入力し、セルB1からB38には国民の祝日を入力しています。 で、これでほとんどの場合で上手くいったんですが、例えば明日8月31日を基準日とした場合、3ヵ月後を、基準日が月末なので3ヵ月後も月末で揃える格好で日付を指定したいと考えており、エクセル関数の組み合わせでとまってしまいました。 つまり8月31日を基準日としたような場合は、求める日付として11月30日(11月30日が土日や祝日の場合は、更にさかのぼって11月29日だったり、11月28日が求める日付)となるようにしたいと考えております。 どなたか、お知恵を拝借できればと思っております。よろしくお願いいたします。

  • 退職にあたって理想の日付

    私の会社は28日締めの28日払いの月給制度です。 ちなみに使用期間の身分ではありません。 もし 5月15日をもって辞めた場合は ゴールデンウィーク中の給与は支払われないのでしょうか? ちなみに土日祝日休みの会社です。 日割りだと出てる日のみ給与を支払いなのでしょうか?

  • IF関数を使いたい

    仕事で給与計算データを作ろうと思っています。 給与に応じて所得税を1つのセルに自動的に 入れたいのですが、その場合どうしたらよろしいでしょうか。 所得が87,000円から87,999円の場合は所得税は130円、 88,000円から88,999円の場合は所得税が210円、 89,000円から89,999円の場合は所得税が290円・・・ というようになっています。 1つのシートを所得税シートにして、  A行を87000、88000、89000・・・  B行を87999、88999、89999・・・  C行を130、210、290・・・ と入力していきました。 これを違うシートのあるセルに所得税を入れたいのです。 どなたか計算式を教えてください。 宜しくお願い致します。

  • if関数がわかりません。

    if関数がわかりません。 エクセルを少しかじっただけの初心者です。 上司に言われて表をつくっているのですが行き詰まって質問させていただきました。 もし○○○○なら △という値をかえす そうでないなら□という値をかえす となるのがif関数だと思うのですが 返すのが値ではなくもし○○○○なら入力されているフォントが赤くなる そうでないならフォントが黒くなるという設定は可能ですか? もし可能なら引数の設定でどうなりますか?  論理式   A1=○○○○(もしA1のセルが=○○○○なら)  真の場合       (フォントを赤の色にする) 偽の場合       (フォントを黒の色にする) よろしく「お願いいたします。

  • エクセル表の日付自動表示で、色の表示がおかしい

    作成者が分からない作業スケジュールを流用しています。 この作業スケジュールの機能は、 自動で日付と土曜日、日曜日、祝日が赤色で表示されるようになっている「はず」なのですが、赤色の表示が、平日にもかかわらず赤色で表示されおかしくなっています。 作成者が分からないため、聞く相手もおらず困っています。 エクセルのセル情報は、  ↓ 「1」のセルには、2010/02/01 を入力しており、 「2」のセルには、「1」のセル位置情報である I4+1 が入力され 「3」のセルには、左隣の「2」のセル位置情報である J4+1 が入力され 「4」のセルには、左隣の「3」のセル位置情報である K4+1 が入力されております。 ※「5」以降のセル情報も同じ規則で入力されてあります。 同じような機能を使ったスケジュール表を利用されている方、アドバイスお願いします。 とにかく、他の方法でも結構です。 日付を自動表示させ、土曜日、日曜日、祝日が色で表示させる方法を教えて下さい。