2016-05-20 5 views
2

データを使って1日中更新するスプレッドシートがありますが、列の最後のセルを取得する必要がありますが、特定の日付範囲列の最後のセル。Excelで範囲内の最後のセルを選択する方法

カラムCに必要なデータが含まれています。カラムAとBは日付と時刻で更新されます(カラムAの一部のセルも空白になることがあります)。列D選択した日付の最新のデータを列Eに表示するように変更できます。

は、ここで私は、列Eに置くために、これまで持っているものです:私は私の式からのデータが、最初のエントリだけを得ることができた

VLOOKUP(D1, $A:$C,3,FALSE) 

。たとえば、17/05/2016の日付を入力すると「5」が返されます。私はより最近のデータ '28'が必要です。

例のシート:私はちょうど私の頭を取得し始めました

Example sheet

 A  | B  | C | D | E 
16/05/2016 | 08:00:00 | 3  | date | data 
16/05/2016 | 12:00:00 | 7  
16/05/2016 | 18:00:00 | 15  
16/05/2016 | 22:00:00 | 27  
17/05/2016 | 08:00:00 | 5  
17/05/2016 | 12:00:00 | 11  
17/05/2016 | 18:00:00 | 21  
17/05/2016 | 22:00:00 | 28  
18/05/2016 | 08:00:00 | 4  
18/05/2016 | 12:00:00 | 13  
18/05/2016 | 18:00:00 | 19  
18/05/2016 | 22:00:00 | 30  

は周りの数式をExcelはので、任意の助けをいただければ幸いです!

+0

スクリーンショットよりもテキストサンプルデータを投稿する方がよいでしょう。それがあなたの編集をロールバックした理由です。 vlookupを使用し続ける場合は、falseをTRUEに変更できます。列Aは昇順にソートする必要があります。 –

+0

@ ForwardEd- vlookupをTRUEで使用するには、 '= A2 + B2'で列を作成し、その列を昇順にソートする必要があります。 – weir

+0

@ user704808いいえ、彼は現在時間で検索していません。特定の日付範囲の最後のセルについて質問されたので、B列は使用されません。現在、あなたが提示しているシナリオの日付範囲内で最新の時間のクエストがあった場合、列Aで昇順、次に列Bでセカンダリとして同じ結果が生成されます。 –

答えて

2
=INDEX(C2:C13,MATCH(D3,A2:A13,1)) 

INDEX/MATCHは非常に強力な組み合わせです。それはVLOOKUPと同じ仕事をしてからもう少し多くの仕事をすることができます。 VLOOKUPは、最初の列を検索し、情報を右側に戻すことに限定されています。 MATCHを使用すると、どの列からでも情報を返すことができます(たとえvlookup cantの左端まで)

MATCH関数で読み始めると、範囲A2内のD3の値を検索します:A13を返し、D3の値が見つかった行を表す整数を返します。マッチの最後の1は、D3が超過した最後のエントリを探すためにマッチを指示します。これは、列Aを昇順にソートする必要があることを意味します。

INDEXはMATCHの整数を使用し、指定された範囲内の多くの行を降ります。したがって、一致が1を返した場合はC2を読み込みます。

Proof of Concept

+0

ありがとうございました!私の実際のスプレッドシートは複数のワークブックにまたがっているので、ちょうどその場所をちょっとだけ編集してしまいました。超高速応答も余りにもありがとう! –

関連する問題