日付ごとに最後の3つのアイテムを検索するExcel関数


0

日付に関連する最新の3つのトランザクションを取得しようとしています。(問題は、スプレッドシート内の順序が乱れていることであり、ソートを行いたくないのです。)

  Date       Amount
13/06/2015     15
01/06/2015     56
07/05/2015     33
04/06/2015     14
08/06/2015     22

回答:


1

日付が列Aにあり、金額が列Bにあると仮定します。

  • C2にデータを入力=INDEX(B$2:B$6,MATCH(LARGE(A$2:A$6,ROWS(C$2:C2)),A$2:A$6,0))し、フィルハンドルをC4までドラッグします。

ここに画像の説明を入力してください

注意:日付のフォーマットを変更しました。


ありがとう3つの配達
TADS

@tadsは、マクロまたはいくつかの.NETコードの作成を検討します。
グレンフェリー

数式を組み合わせて、これが役立つことを願っています
クリフ

これについてもう少し考えてみると、2つのケースがあり、この特定の例には当てはまらないかもしれませんが、同様のソリューションを探している人には役立つかもしれません。1つのケースは、まだ行われておらずカウントされるべきではないスケジュールされた配信であり、もう1つのケースは空白です。この式=INDEX(B$2:B$10,MATCH(LARGE(--(A$2:A$10<TODAY())*A$2:A$10,ROWS(C$2:C2)),A$2:A$10,0))は両方を処理します。同時にCtrl+ Shift+を押して、数式を入力する必要がありますEnter
クリフ

1

あなたのvlookupデータがどこにあるかを知っていれば、これを使ってかなり簡単にこれを行うことができます

あなたのデータが始まると言うA2-

=VLOOKUP(LARGE($A$2:$A$10,Row()),$A$2:$B$10,2,0)

この数式は、D1または行1のセルに配置された場合に最大値を返します。行2にドラッグすると、2番目に大きい値が選択されます。等..

最も大きいセルE5に数式を入力する必要がある場合は、調整するだけです-

=VLOOKUP(LARGE($A$2:$A$10,Row()-4),$A$2:$B$10,2,0)

またはもちろん、次のようにハードコードします-

=VLOOKUP(LARGE($A$2:$A$10,Row(A1)),$A$2:$B$10,2,0)
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.