
Excel でこれが可能かどうかはわかりません。
次のようなシートがあります:
+---------------+-------+--------+-------+-------+-------+-------+-------+-------+
| | August | September |
+---------------+-------+--------+-------+-------+-------+-------+-------+-------+
| Week Starting | 04/08 | 11/08 | 18/08 | 25/08 | 01/09 | 08/09 | 15/09 | 22/09 |
+---------------+-------+--------+-------+-------+-------+-------+-------+-------+
| Monday | | | | | | | | |
+---------------+-------+--------+-------+-------+-------+-------+-------+-------+
| Tuesday | | | | | | | | |
+---------------+-------+--------+-------+-------+-------+-------+-------+-------+
| Wednesday | | | | | | | | |
+---------------+-------+--------+-------+-------+-------+-------+-------+-------+
| Thursday | | | | | | | | |
+---------------+-------+--------+-------+-------+-------+-------+-------+-------+
| Friday | | | | | | | | |
+---------------+-------+--------+-------+-------+-------+-------+-------+-------+
| Week Extra | | | | | | | | |
+---------------+-------+--------+-------+-------+-------+-------+-------+-------+
| Week Total | | | | | | | | |
+---------------+-------+--------+-------+-------+-------+-------+-------+-------+
(実際のシートにはすべての月が記載されています。)
生データは次のようになります。
+------+------+----------+
| DDMM | Year | Quantity |
+------+------+----------+
| 0408 | 2014 | 2 |
| 0708 | 2014 | 7 |
| 0509 | 2014 | 12 |
| 0508 | 0000 | 6 |
+------+------+----------+
生データを解析してカレンダー テーブルに追加する必要があります。最初のデータ行は、「04/08」の月曜日に 2 を追加します。
年が 0000 の場合、正しい週を表すために「Week Extra」に数字を追加する必要があります。
これは可能ですか?
ありがとう
答え1
最も良い方法は、生の表の日付を実際の Excel の日付に変換することです。実際の Excel の日付から、曜日のテキスト、月のテキスト、週の開始日を抽出し、表に一致するようにテキストに変換し直すことができます。これを行うための数式は、下のスクリーンショットに示されています (入力するには冗長すぎるため)。
これらをカレンダー テーブルに取り込むには、いくつかの方法があります。=getpivotdata()
カレンダーの各セルの値を抽出するために使用できるピボット テーブルを使用するのも 1 つの方法です。私は、=sumproduct()
オーバーヘッドが少ないため、代わりに を使用することを好みます。数式は以下のスクリーンショットに示しており、簡単な説明はその後にあります。
=sumproduct()
複数の条件を値の範囲にわたって真偽についてテストし (この場合は、各行の条件をテスト)、その行のすべての条件が真である場合に別の範囲の結果を合計できます。ここでは、E2:E5 に J2 の DD/MM が含まれること、F2:F5 に J1 の Month Text が含まれること、G2:G5 に I3 の WorkDay テキストが含まれることをテストしています。すべての条件が真である場合は、C2:C5 の値を取得して合計します。この数式に関する注意点の 1 つは、テストする範囲は常に同じ長さである必要があることです。E2:E5 で DD/MM をテストし、F2:F20 で Month をテストすることはできません。Sumproduct はエラーをスローします。