1

エクセルには以下のようなデータがあります。

2011    0
2011    15
2011    10
2011    5
2012    15
2012    10
2012    5

私が見つけたいのは、出力が次のようになるように、それぞれの年の最後の行です

2011    5
2012    5

これを行う方法はありますか?

この投稿を見て、最後の行のデータを見つける方法を見つけましたが、同じものを年ごとにフィルタリングする方法を知る必要があります。

:Excelの定義済み関数を使用してこれを行いたいです。マクロなし、コーディングなし、ピボットなし。


編集 1

=INDEX($B:$B,MAX(IF(LEN($B:$B)>0,ROW($B:$B),0)),1)5 と答えます。これを行う方法はありますか?


編集 2

=OFFSET(B2,MAX(IF(NOT(ISBLANK(B2:B25)),ROW(B2:B25),0))-ROW(B2),0)これにより、最後の行のデータも得られます。

4

2 に答える 2

1

これは、あなたの望むことですか?

{=INDEX($B$1:$B$7,MAX(IF(A9=$A$1:$A$7,ROW($A$1:$A$7))))}

これは配列関数として入力する必要があるため、コピーと入力してコードを「」の間に貼り付けてから{}を押しctrl-shift-enterます。2011このコードは、セル内にあることを前提としていますA9。次に、2012A10と入力して数式をコピーすると、機能します。

画面キャプチャ

式の基本的な考え方は次のとおりです。

  1. A1:A7一致するセルがある場合はA9、その行番号を候補行のリストに追加します
  2. 候補者リストの最大行数を取得します。これはkだと言う
  3. インデックス関数を使用して、の行kにある値を返します。B1:B7
于 2012-10-30T13:39:01.400 に答える
0

コーディングせずにこれを行う最も簡単な方法は、ピボット テーブルを使用することです。

たまたま Excel の数式または関数を作成した場合は、max()関数とvlookup( )またはhlookup()関数を使用する可能性が高くなります。

于 2012-10-30T12:07:43.767 に答える