Bethは、会社で提供されているクラスを少なくとも10回受講した従業員の数を特定する方法を探していました。彼女は、列A(A2で始まる)に従業員名が含まれ、列B(B2で始まる)にクラス名が含まれるようにExcelを設定しました。従業員がクラスを受講すると、その名前が列Aに入力され、受講したクラスの名前が列Bに配置されました。したがって、列Aには各従業員の名前の複数のインスタンスが含まれ、列Bには複数のインスタンスが含まれます。クラス名。

従業員がいつ10のクラスを受講したかを判断する方法の質問は、COUNTIF関数を使用することで最もよく答えることができます。たとえば、次の数式を列Cの各セルに入力できます。

=IF(COUNTIF(A:A,A2)>9,"10 classes or more","")

数式を正しく使用するために、この特定のインスタンスはセルC2に配置され、列Cの残りのセルにコピーされます。

これにより、数式のA2参照が変更され、常にセルのすぐ左の2列を参照するようになります。 (C2の式はA2を参照し、C3の式はA3を参照します。)

この式を使用すると、特定の人が10番目のクラスを受講した場合(つまり、名前が列Aに10回表示された場合)、列Cは、特定の人が受講した各クラスの横に「10クラス以上」というフレーズで埋められます。これは素晴らしいことですが、さまざまな従業員が10クラスのしきい値を超え始めた場合を除きます。

次に、列Cが乱雑に見え始めます。

混乱を克服するために、上記のアプローチのバリエーションは、列Cのセルで次の数式を使用することです。

=IF(COUNTIF($A$2:A2,A2)>9,"10 classes or more","")

この場合、COUNTIF関数は列Aのすべてのセルを調べるわけではありません。代わりに、数式が発生する行以下の行にある列Aのセルを調べます。したがって、この数式が行8にある場合、COUNTIFはカウントを行う際に行2から8のみを調べます。その結果、「10クラス以上」というフレーズが生まれます

特定の従業員が10クラスのマークを通過した場合にのみ、列Cに表示されます。従業員が1番目、2番目、3番目、および9番目までのクラスを受講していた場合は表示されません。

最後に、従業員クラステーブルをもう少し凝ったものにすることができ、各従業員が受講したクラスの正確な数を確認できます。列AとBにまだ名前とクラスが含まれている場合は、列Cを空白のままにして、列Dの最初の行に各従業員名の単一インスタンスを配置できます。 E列では、各従業員名の右側に次の数式を配置できます。

=COUNTIF(A:A,D2)

その結果、列Eには、列Aに表示される列Dの名前のインスタンスの数が含まれます。つまり、各従業員が受講したクラスの数がカウントされます。次に、列Dのセルに条件付き書式を使用して、列Eのカウントが10以上の場合に赤で表示されるようにすることができます。

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

このヒント(2552)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。

link:/ excelribbon-Counting_Employees_in_Classes [クラス内の従業員のカウント]