%20%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF%E3%81%A9%E3%81%86%E3%81%99%E3%82%8C%E3%81%B0%E3%82%88%E3%81%84%E3%81%A7%E3%81%99%E3%81%8B%3F.png)
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
例に を使用します。
- データ範囲を選択します(例では、列全体を選択しました)
A:A
- リボン上で
Home
クリックしConditional Formatting
てNew Rule...
- 選択する
Use a formula to determine which cells to format
=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
。これが、絶対参照と相対参照 ($
または なし$
) を制御することで実現されます。- ボタンをクリックして
Format...
、好きな書式を選択します。この場合は、セルを黄色の背景で強調表示することを選択しました。 - クリックし
OK
て条件付き書式設定ウィンドウを閉じ、結果を確認します
私がこの方法を実行したため、すべての空白行も強調表示されることに注意してください。それでもうまくいかない場合は、修正方法がいくつかあります。リストが大きくなるにつれて簡単に対応できるため、オプション 1 をお勧めします。
- ステップ4で使用する式を次のように変更します。
=AND($A1<>"",COUNTIF($A:$A,$A1)<4)
A:A
手順 1 のようにすべての列を選択するのではなく、データ範囲だけを選択します。Conditional Formatting Rules Manager
条件付き書式が作成されたら、 (ホーム リボン > 条件付き書式 > ルールの管理...)に戻り、Applies to
フィールドを から=$A:$A
などの特定の値に変更します=$A$1:$A$19
。これはオプション 2 を使用した場合と同じ結果ですが、事後に変更することができます。