2016-11-21 83 views
0

如何以最简单的方式对此进行编码?检查重复的Excel VBA

如果让我们说Range("A1").value = "Thursday"

检查所有的细胞复制其在它们的值(B1,C1,D1,...)

如果发现重复,选择3个小区下面的每个那些细胞Range("B2:B4")等等......

谢谢你提前!

回答

1

的最简单的方法是检查重复:

使用WorksheetFunction

= COUNTIF(A:A,A1)> 1

enter image description here

使用VBA

Dim Target As Range 
Dim r As Range 

Set Target = Range("A1", Range("A" & Rows.Count).End(xlUp)) 

For Each r In Target 
    r.Offset(0, 1) = WorksheetFunction.CountIf(Target, r.Value) > 1 
Next 

如果你想删除重复范围内的第一列

Target.RemoveDuplicates列:= 1,部首:= xlNo

如果你想扩展您的范围,包括列B和C

设置目标=范围( “A1”,范围( “A” & Rows.Count).END(xlUp))。调整(,3)

在第一列和第三列删除重复

Target.RemoveDuplicates列:=阵列(1,3),部首:= xlNo

删除包含重复的行

Target.EntireRow.RemoveDuplicates Columns:= Array(1,3),Header:= xlNo

+0

Thank you for your机智的回复!我会试试这个! :) – JcDiago

+0

如果文本超过255个字符,你在做什么? – MeLine

+1

@MeLine我只是测试它和RemoveDuplicates按照预期在一列填充300个字符的字符串 – 2017-11-20 14:22:03