我有一个名为NumberID的列有大约50k记录的电子表格。我知道有重复,但滚动向上/向下它需要永远找到任何东西加上往往是Excel的速度有点慢。我正在尝试编写一段代码,以便能够查找并计算重复项的数量。查找和计算重复次数
我想写一个快速的方式做到这一点,基本上我的数据是从20行到48210,我试图找到一个总数重复的记录。
Dim lastRow As Long
Dim matchFoundIndex As Long
Dim iCntr As Long
Dim count As Long
count = 0
lastRow = Range("B48210").End(xlUp).Row
For iCntr = 1 To lastRow
If Cells(iCntr, 1) <> "" Then
matchFoundIndex = WorksheetFunction.Match(Cells(iCntr, 1), Range("B20:B" & lastRow), 0)
If iCntr <> matchFoundIndex Then
count = count + 1
End If
End If
Next
MsgBox count
这里即时通讯上= WorkSheetFunction.Match得到一个错误 - 我发现,这个属性可以用来完成我想要做的事。错误说
无法获取工作表功能类的匹配属性。
有人有想法吗?我的vba已经生锈了
如果你的唯一的问题是,匹配误差,这可能是http://stackoverflow.com/questions/17751443的副本/ excel-vba -cant-get-a-match-error-unable-to-the-match-property-of-the-wor –
@TJRockefeller - 代码看起来是否合理,否则 – BobSki
您显示的所有内容正在使用列B,但你在比赛的第一个标准中引用的是使用A栏。我建议改变'Cells(iCntr,1)'到'Cells(iCntr,2)' –