ゲイリーはExcelワークシートを使用して、会社が検査する施設のリストと、それらの施設の以前のすべての検査の日付を管理しています。これにより、施設ごとに複数の行が作成され、検査ごとに1行になります。ゲイリーは、最新の検査日を除いて、各施設のすべての行を削除する必要があります。結果は、施設ごとに1行になり、最新の検査日が表示されます。

おそらく、これを行う最も簡単な方法は、Excelの重複削除ツールを使用することです。この特定の目的でツールを使用するには、次の手順に従います。

。データ内のセルを選択します。

。リボンの[データ]タブを表示します。

。並べ替えツールをクリックします。 Excelに[並べ替え]ダイアログボックスが表示されます。

。ダイアログボックスのコントロールを使用して、最初に施設(AからZまたは最小から最大のいずれか適切な方)で並べ替え、次に検査日(最新から古い)で並べ替えることを指定します。 (図1を参照)

。 [OK]をクリックして、実際にデータを並べ替えます。

。リボンの[データ]タブが表示されたままの状態で、[データツール]グループの[重複の削除]ツールをクリックします。 Excelは、[重複の削除]ダイアログボックスを表示します。

。ダイアログボックスで選択されているフィールドが、ファシリティを含むフィールドだけであることを確認してください。 (図2を参照)

。 [OK]をクリックします。 Excelは重複を削除し、最新の(最新の)検査日を含むレコードのみを残します。

これらの手順に従うと、データが破壊されることを理解してください。完了すると、古いデータがワークシートから完全に削除されます。したがって、履歴の目的で古い情報を維持したい場合は、データの複製に対して手順を実行することをお勧めします。

もちろん、元のデータを維持し、最新の検査日を表す情報を単純に抽出する別のアプローチを使用することもできます。この例の目的のために、データが列A:Cにあり、Aが施設を含み、Bが検査日を含み、Cがその日に達成された評価を含むと仮定します。さらに、データの最初の行には見出し(施設、検査済み、および評価)が含まれています。データの右側のどこかに(少なくとも1つの空の列で区切られて)、同じ見出しの別のセットを配置します。 (この例では、これらはE:G列に表示されると想定します。)

最初の列に、施設の一意のリストを配置します。セルF2に、次の数式を配置します。

=MAX(($A$2:$A$123=E2)*$B$2:$B$123)

2つの低い範囲の参照($ A $ 123と$ B $ 123)を、データに適したより低い範囲に置き換えることができます。また、これを配列数式として入力する必要があります。つまり、Ctrl + Shift + Enterを押してセルF2に追加します。

セルF2の結果は数値になりますが、これは実際には日付です。 (Excelは日付を数値として内部的に保持します。)F2を日付のように見せるために、セルに日付形式を適用するだけです。

セルG2に次の数式を配置します:

=SUMIFS($C$2:$C$123,$A$2:$A$123,E2,$B$2:$B$123,F2)

繰り返しますが、より低い範囲の参照は、データに適した参照に置き換えることができます。これは配列数式ではないため、Enterキーを押すだけでセルG2に配置できます。

次に、セルF2:G2を施設に適した行数だけコピーします。最終的には、各施設の最新の検査結果の動的リストになります。 (図3を参照)

image

図3.最新の検査結果の動的リスト。

検査リストにデータを追加すると、「結果テーブル」が更新され、常に最新の検査結果が表示されます。

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(13125)は、Microsoft Excel 2007、2010、2013、2016、2019、およびOffice365のExcelに適用されます。