3 列のデータ テーブルがあります (見やすくするために外観は簡略化されていますが、配置とデータ形式は保持されています。最初の列A
はDate
地域設定で書式設定されていますが、テキストではありません):
Date Module Value
27.01.2013 xxxxx 90
27.01.2013 ttttt 100
29.01.2013 aaaaa 110
31.01.2013 aaaaa 50
31.01.2013 mmmmm 200
31.01.2013 ttttt 80
03.02.2013 ttttt 140
04.02.2013 aaaaa 120
07.02.2013 mmmmm 150
07.02.2013 ttttt 90
07.02.2013 aaaaa 190
08.02.2013 aaaaa 210
08.02.2013 aaaaa 90
08.02.2013 aaaaa 170
08.02.2013 ttttt 90
08.02.2013 ttttt 110
08.02.2013 mmmmm 130
09.02.2013 mmmmm 90
09.02.2013 aaaaa 200
リストはかなり長くなる可能性があり、定期的に更新されます。私が達成する必要があるのはこれです:同じシートに、次の計算されたセルが列Eから始まるように配置されています(つまり、データと計算された領域の間に空白の列Dがあります):
MAX last week Date Value
aaaaa 09.02.2013 200
mmmmm 07.02.2013 150
ttttt 03.02.2013 140
xxxxx <empty> No change
A:C
基本的に、次のデータ配列から調べる必要があります。
E
( のモジュール名に対応する)の値のリストと、同じモジュールの値の中で最大であるが、今日から始まる最後の 1 週間B
の対応する値を返す必要があります。- 過去 1 週間にこのモジュールのレコードがない場合 - Date は空で、"No change"文字列は Value である必要があります (
xxxxx
上記のサンプルのように、最初の配列に関連し、今日が 2 月 9 日であると仮定します)。
#2に関しては、次のようになりました。
- の場合
Date
:=IF(SUMPRODUCT(--(A:A>TODAY()-7),--(A:A="xxxxx"))=0,"")
- For
Value
:=IF(F5="","No change")
(左側の対応する日付をここで確認します)
#1については、行き詰まっており、ガイダンスまたはアドバイスが必要な場所です. などでさまざまなことを試しましたがMATCH
、VLOOKUP
成功にはほど遠いものでした。エラーが発生したか、関連性のない結果が得られました。
それが重要な場合 - 日付は常にリストの最後に新しいレコードが来るように並べ替えられます。つまり、新しいレコードは一番下に追加されます。同じモジュールの場合、同じ日に複数のレコードが存在する場合があります。サンプルまたは説明が明確でない場合は、コメントで返信してください。詳細を追加します。ありがとう!