Excel で重複行が 4 行以上ある場合にのみ、重複行を削除 (または強調表示) するにはどうすればよいですか?

Excel で重複行が 4 行以上ある場合にのみ、重複行を削除 (または強調表示) するにはどうすればよいですか?

300行以上のデータがあるExcel文書があります。列Aは人名でソートされており、4未満シート内の発生回数。

4 つ以上の名前をすべて削除する方法はありますか? または、4 つ以上の名前をすべて強調表示する方法はありますか?

ありがとう!

答え1

まず次のように始めます:

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

そして、次の短いマクロを実行します。

Sub RowKiller101()
  Dim rKill As Range, r As Range, wf As WorksheetFunction
  Dim rBig As Range
  Set rBig = Intersect(Range("A:A"), ActiveSheet.UsedRange)
  Set rKill = Nothing
  Set wf = Application.WorksheetFunction

  For Each r In rBig
    If wf.CountIf(rBig, r.Value) > 3 Then
      If rKill Is Nothing Then
        Set rKill = r
      Else
        Set rKill = Union(rKill, r)
      End If
    End If
  Next r

  If rKill Is Nothing Then Exit Sub
rKill.EntireRow.Delete
End Sub

私たちは得るだろう:

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

答え2

VBA 以外のソリューションの場合:

列 B に次のような数式を入力すると=countif($A:$A,$A1)、スプレッドシートは次のようになります。

    A    B  
1  Joe   3  
2  Joe   3  
3  Joe   3  
4  Amy   5  
5  Amy   5  
6  Amy   5  
7  Amy   5
8  Amy   5

次に、 を選択しA1、条件付き書式 (カスタムルール) に移動して、数式 を入力します=B1>=4。次に、列 A で必要なだけルールを適用します。アンカーがない場合は、$適用されたセルとともにルールが移動します。

答え3

Gary の学生: VBA ソリューションで <4 以外のすべてを削除
selwyth: 数式ソリューションで <4 の集団だけをフィルター処理
この回答: 条件付き書式ソリューションで <4 の集団だけを強調表示

(また、Office サポート記事条件付き書式で数式を使用する方法については、実際には、COUNTIF例に を使用します。

  1. データ範囲を選択します(例では、列全体を選択しました)A:A
  2. リボン上でHomeクリックしConditional FormattingNew Rule...
  3. 選択するUse a formula to determine which cells to format
  4. =COUNTIF($A:$A,$A1)<4
    Aのような数式を入力します。$A:$Aを重複を検索する範囲に変更します。たとえば、 になります。$G$12:$G$48は、$絶対参照セルごとに変化しない。B
    .$A1初め$選択範囲内のセル。ここでは列を絶対値にしたいだけなので、 は1 つしかないことに注意してください。行番号 (1この場合は ) は現在のセルを基準に相対値にしたいのです。C
    . 結果として、 の条件付き書式ではA1数式 が使用され=COUNTIF($A:$A,$A1)<4、 ではA2数式 が使用されます=COUNTIF($A:$A,$A2)<4。これが、絶対参照と相対参照 ($または なし$) を制御することで実現されます。
  5. ボタンをクリックしてFormat...、好きな書式を選択します。この場合は、セルを黄色の背景で強調表示することを選択しました。
  6. クリックしOKて条件付き書式設定ウィンドウを閉じ、結果を確認します

ステップ 1 ~ 5 のスクリーンショット

私がこの方法を実行したため、すべての空白行も強調表示されることに注意してください。それでもうまくいかない場合は、修正方法がいくつかあります。リストが大きくなるにつれて簡単に対応できるため、オプション 1 をお勧めします。

  1. ステップ4で使用する式を次のように変更します。=AND($A1<>"",COUNTIF($A:$A,$A1)<4)
  2. A:A手順 1 のようにすべての列を選択するのではなく、データ範囲だけを選択します。
  3. Conditional Formatting Rules Manager条件付き書式が作成されたら、 (ホーム リボン > 条件付き書式 > ルールの管理...)に戻り、Applies toフィールドを から=$A:$Aなどの特定の値に変更します=$A$1:$A$19。これはオプション 2 を使用した場合と同じ結果ですが、事後に変更することができます。

関連情報