Excel VBA - 比较一列中的数字并删除较高的“邻居”数字

时间:2015-11-20 21:33:51

标签: algorithm vba excel-vba excel

我在一列中有一个数字列表(0.331,0.332,0.444,0.445,0.562,0.986,0.990,0.993,1.021,1.022,...)我想删除真正接近的数字(0.001差异)只有)得到以下列表:(0.331,0.444,0.562,0.986,0.990,0.993,1.021 ......)总是删除更高的数字。

有什么想法吗?

列表显然很长,我已经删除了副本。 现在,我想删除较高的“邻居”号码,也许不是正确的术语,但我希望你理解我的问题。

谢谢,

JLuc01

1 个答案:

答案 0 :(得分:0)

有关信息,我最终做了一些代码来完成这项工作。

' Remove close duplicate (with a difference of 0.001 only)
For i = 1 To Sheet2.Cells(Rows.Count, 1).End(xlUp).Row - 1
    Sheet2.Cells(i + 1, 2).Value = Sheet2.Cells(i + 1, 1).Value - Sheet2.Cells(i, 1).Value
Next i
For i = 1 To Sheet2.Cells(Rows.Count, 2).End(xlUp).Row - 1
    If Sheet2.Cells(i + 1, 2).Value < 0.002 Then
        Sheet2.Cells(i + 1, 2).EntireRow.Delete
    End If
Next i

感谢您的帮助。

JLuc01