Excel 数式:2 つの日付間で曜日をカウントする

このチュートリアルでは、Excel で指定した2 つの日付の間に含まれる特定の曜日が何回あるかをカウントする数式をご紹介します。
このチュートリアルに沿って操作するには、まずサンプルスプレッドシートをダウンロードしてください。
汎用的な数式:
| SUMPRODUCT(--(WEEKDAY(ROW(INDIRECT(start_date&":"&end_date)))=week_day)) |
構文と引数
| Start_date, end_date: the two dates that you want to count a specific weekday between. |
| Week_day: a number that indicates the weekday that you want to count the number between two dates. |
曜日番号
| 曜日 | 数値 |
| 日曜日 | 1 |
| 月曜日 | 2 |
| 火曜日 | 3 |
| 水曜日 | 4 |
| 木曜日 | 5 |
| 金曜日 | 6 |
| 土曜日 | 7 |
返す値
この数式は数値を返します。
この数式の仕組み
セル B3 と C3 にはカウント対象の2 つの日付が、E3 には曜日番号がそれぞれ入力されています。以下の数式をご利用ください。
| =SUMPRODUCT(--(WEEKDAY(ROW(INDIRECT(B3&":"&C3)))=E3)) |
Enter キーを押して結果を取得し、必要に応じてオートフィルハンドルをドラッグして他のセルにも数式を適用しましょう。

解説
INDIRECT 関数:有効なワークシート参照を返します。
ROW 関数:参照されているセルの行番号を返します。
数式 ROW(INDIRECT(B3&":"&C3))は、次のような配列を返します。
{43933;43934;43935;43936;43937;43938;43939;43940;43941;43942;43943;43944}
B3:C3 は日付範囲 43933:43944(Excel では日付が数値として保存されます)と見なすことができます。
WEEKDAY 関数:指定された日付から曜日(1~7)を取得できます。
数式 WEEKDAY(ROW(INDIRECT(B3&":"&C3)))は、次のような配列結果を返します。
{1;2;3;4;5;6;7;1;2;3;4;5}
SUMPRODUCT 関数:配列の要素ごとの積を合計し、その結果を返します。
現在、数式は次のように計算されます。
=SUMPRODUCT(--(WEEKDAY(ROW(INDIRECT(B3&":"&C3)))=E3))
=SUMPRODUCT(--({1;2;3;4;5;6;7;1;2;3;4;5}=E3))
=SUMPRODUCT(--{FALSE;FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE})
=1
関連する数式
- 平日のみを2 つの日付の間でカウントする
このチュートリアルでは、週末と祝日を除き、2 つの日付間に含まれる平日の日数を正確にカウントするための数式をご紹介します。 - 今月または今年の残り日数をカウントする
今月または今年の残り日数をカウントするための便利な数式をご紹介します! - 2 つの日付間の日数をカウントする
ここでは、2 つの日付間の日数、週数、月数、年数を正確にカウントするための便利な数式をご紹介します! - 時間変換を小数分に変換する
このチュートリアルでは、Excel で時間を小数表示の分数に変換するための数式をご紹介します。
関連する関数
- Excel IF 関数
条件をチェックし、その結果に応じた値を返します。 - Excel VALUE 関数
テキストを数値に変換します。 - Excel MONTH 関数
MONTH 関数は、日付から月を整数(1~12)で取得する際に使います。 - Excel DAY 関数
DAY 関数を使えば、日付から「日」の部分を1~31 の数値として簡単に取得できます! - Excel YEAR 関数
YEAR 関数は、指定された日付から4 桁の西暦(年)を抽出し、シリアル値として返します。
最高の Office 生産性ツール
Kutools for Excel - あなたを群衆の中から際立たせます
| 🤖 | KUTOOLS AI アシスト:次に基づいてデータ分析を革新します:インテリジェント実行 | コード生成| カスタム数式作成 | データ分析とチャート生成| 拡張機能呼び出し… |
| 人気機能:検索・ハイライト・重複をマーキング | 空白行を削除する | データを失うことなく列の結合またはセルを | 数式を使用しない四捨五入... | |
| スーパー VLookup:複数条件 | 複数値 | 複数シート間 | ファジーマッチ... | |
| 高度なドロップダウンリスト:簡単なドロップダウンリスト | 連動型ドロップダウンリスト | 複数選択可能なドロップダウンリスト... | |
| 列マネージャー:指定した数の列を追加 | 列の移動 | 非表示列の表示状態を切り替え |列を比較して同じ/異なるセルを選択... | |
| 注目の機能:グリッドフォーカス | デザインビュー | 強化された数式バー | ワークブックとシートマネージャー|リソースライブラリ(オートテキスト)| 日付ピッカー | ワークシートの統合 | 暗号化/セルの復号化 | リストからメール送信 | スーパーフィルター | 特殊フィルタ(太字のフォントを持つセルをフィルタリング/イタリック/取り消し線。。。) 。。。 | |
| トップ15 ツールセット:12 テキストツール(テキストの追加、特定の文字を削除...)| 50+チャートタイプ(ガントチャート...)| 40+実用的な数式(誕生日に基づいて年齢を計算します...)| 19 挿入ツール(QR コードを挿入、パスから画像を挿入...)| 12 変換ツール(単語に変換する、為替レートの変換...)| 7 結合と分割ツール(高度な行のマージ、Excel セルを分割...)|。。。他にも多数 |
Kutools for Excel は300 以上の機能を備えており、必要な機能が常にワンクリックで利用できます…
Office Tab - Microsoft Office(Excel を含む)でタブを使った閲覧・編集を可能にします
- 数十もの開いているドキュメントを1 秒で切り替えられます!
- 毎日何百回ものマウスクリックを削減して、マウス手の悩みともさよならしましょう。
- 複数のドキュメントを閲覧・編集する際の生産性が50%も向上します。
- Office(Excel を含む)に、Chrome、Edge、Firefox のような効率的なタブ機能をもたらします。