ワークシートの 1 行目に日付、2 行目から 5 行目にデータ値があります。データは 6 行目で小計されます。日付は G1 から始まり、右隣の列に行くほど日付が増えていきます。現在、これは EZ 列まで続きます。
過去 7 日間の行 6 のデータの合計を取得したいと思います。
今日の日付は EZ1 にあるので、最初のセルを取得するには次のコードを使用します。 =OFFSET(EZ1,,-7) 過去 1 週間の合計は次のようにして取得できます: =SUM(EZ6:OFFSET(EZ6,,-7))
しかし、値が常に最新になるようにこれを自動的に更新するにはどうすればよいでしょうか?
答え1
これには Power Query Excel アドインを使用します。これには、変数列リストを各セルの行に変換できる Unpivot コマンドがあります。Unpivot の詳細な例を以下に示します。
まず、フィルターを使用して、行 6 のデータのみを保持します。レイアウトによっては、「下の行を保持」が機能する可能性があります。次に、「他の列をアンピボット」コマンドを使用して、列を行に変換します (動的に、将来の列の変更を可能にします)。
次のステップでは、過去 7 日間だけをフィルターします。日付列では、「過去 X 日間」などの「日付フィルター」を使用できます。
最後のステップはグループ化です。グループ化列を削除し、値の合計のみを計算します。
そこに到達するにはいくつかの手順が必要ですが、コーディングは必要ないため、実際には数式を書くよりも簡単です。各ステップで、前のコマンドの結果を確認できます。