「第1土曜日 判定する EXCEL」
といった検索キーワードでアクセスがありました。
Excelで、何らかの日付が第1土曜日かどうかを判定するには、どのような数式にすればいいのかを探していた方による検索です。
CEILING関数で第1土曜日かを判定する
CEILING関数を使うと、比較的シンプルな数式で済むでしょうか。
※A1セルに日付データが入力されているときにB1セルに第1土曜日かどうか判定結果を表示する例
B1セルに
=A1=CEILING(DATE(YEAR(A1), MONTH(A1), 1), 7)
と入力する
A1セルの日付データと、
=A1=CEILING(DATE(YEAR(A1), MONTH(A1), 1), 7)
A1セルの日付と同じ年月で、第1土曜日に該当する日付を表すシリアル値とを、
=A1=CEILING(DATE(YEAR(A1), MONTH(A1), 1), 7)
比較演算子「=」で比較すれば、
=A1=CEILING(DATE(YEAR(A1), MONTH(A1), 1), 7)
第1土曜日かどうかを判定できます。第1土曜日であれば論理値のTRUEが、
第1土曜日でなければFALSEが表示されます。
日付からCEILING関数で第1土曜日を取得する
A1セルの日付データからその年月の第1土曜日に該当するシリアル値を取得する部分から、
=A1=CEILING(DATE(YEAR(A1), MONTH(A1), 1), 7)
確認しましょう。
先日A1セルに年、B1セルに月を表す整数が入力されているときに、C1セルにその年月の第1土曜日に該当する日のシリアル値を計算する数式
=CEILING(DATE(A1, B1, 1), 7)
をご紹介しました。
入力した日付が第1土曜日かを判定する数式
=A1=CEILING(DATE(YEAR(A1), MONTH(A1), 1), 7)
の中の、
CEILING(DATE(YEAR(A1), MONTH(A1), 1), 7)
は、ご紹介済みの、
CEILING(DATE(A1, B1, 1), 7)
の応用です。
CEILING関数の第1引数に指定しているDATE関数の第1引数と第2引数が、
CEILING(DATE(A1, B1, 1), 7)
A1セルに入力された日付の年と、
CEILING(DATE(YEAR(A1), MONTH(A1), 1), 7)
A1セルに入力された日付の月を、
CEILING(DATE(YEAR(A1), MONTH(A1), 1), 7)
指定している点が違っています。
入力した日付と計算した第1土曜日との比較
上記の数式で計算した第1土曜日に該当する日付と、
=A1=CEILING(DATE(YEAR(A1), MONTH(A1), 1), 7)
元々の日付とを、
=A1=CEILING(DATE(YEAR(A1), MONTH(A1), 1), 7)
比較演算子「=」で比較すれば、判定結果がTRUEまたはFALSEで表示されます。
判定結果を文字列で表示したい場合はIF関数
第1土曜日かどうかを判定した結果を、TRUEまたはFALSEの論理値で表示するのではなく、何らかの文字列で表示したいのならIF関数を組み合わせましょう。
IF関数の第1引数に先述の判定する論理式を指定し、第2引数に第1土曜日だったときに表示したい文字列を指定した、
=IF(A1=CEILING(DATE(YEAR(A1), MONTH(A1), 1), 7), ,"〇" ,"" )
とすれば、A1セルの日付が第1土曜日だったときに「〇」が表示されます。
最終更新日時:2020-12-25 17:51
Home » Excel(エクセル)の関数・数式の使い方 » 論理・情報 » 第1土曜日かを判定する