Excel:隣接する列の最高値を保持しながら、1つの列の重複を削除します
-
22-07-2019 - |
質問
2列のExcelスプレッドシートがあります。最初の列はラベルで、2番目の列は数値です。列「A」の重複するラベルをすべて削除したい列" B"の最大数値のままにします。私は以下を説明しようとしました(フィルターは" Original Sheet"を与えられた" Consolidated Sheet"になります:
注1:メールサーバーのログファイルを解析して、特定の日にホストとその最大SMTP接続のリストを取得しようとしています。 Windows上でこれを行う方法を提案できる場合(Strawberry Perlを使用することを意味する場合でも)、私は解決策に感謝します。
注2:「スプレッドシート」で想像力を働かせる必要があるかもしれません。以下に図を示しました。各行を個別の行に配置しようとしましたが、すべての行が1行でレンダリングされています。 [編集]順不同リストにすべてを入れることで修正しました。
"オリジナルシート"
- colA、colB
- name1、32.0、
- name1、12.5、
- name1、11.0、
- name1、10.1、
- name1、6.9、
- name2、2.3、
- name2、1.1、
- name2、0.9、
- name3、54、
- name3、60、
- name3、101、
- name3、12、
"統合シート"
- colA、colB
- name1、32.0、
- name2、2.3、
- name3、101、
よろしく、 emk
解決
Excelのピボットテーブル機能だけを使用しませんか?
他のヒント
「一意のレコードのみ」で高度なフィルタを使用できます。チェックボックスをオンにして、一意の値を新しい場所にコピーします。
一意の値を取得したら、配列関数を使用して最大値を見つけることができます。
元のデータがa2:a13にあり、一意の値がd2:d4にあるとします(列見出しは無視します)。 e2の式は= SUMPRODUCT(MAX(($ A2:$ A13 = D2)*($ B2:$ B13)))
になります配列関数は、単にEnterではなく、Ctrl + Shift + Enterでセルに入力する必要があります。
ただし、JDunkerleyが言うように、ピボットテーブルは最も簡単で高速な方法です。