[Quote=引用 16 楼 alifriend 的回复:]
13楼的代码会重复计算吧,而且
If (ExcelData(i) <> 0) And (ExcelData(j) <> 0) And (ExcelData(i) <> ExcelData(j)) Then
不能减自己应该是i <> i吧
For i = 1 To 5
For j = i+1 To 6
这样可以不用判断是否重复或自减
If Abs(Data) = 1 Or Data = 0 Then
可以改成 Abs(Data) <=1
[/Quote]
i<>j 我已经在15楼改了。当时我就发现了!
For i=1 To 5
For j=i+1 To 6
这样可以不用判断是否重复或自减。这个你说对了!
If Abs(Data)=1 Or Data=0 Then
可以改成 Abs(Data) <=1 这个你错了! Abs(Data)=1 Or Data=0和Abs(Data)<=1是两回事
人家只要两两相减结果为0,1,-1的就输出;而Abs(Data)<=1,两两相减,结果可以为0.5,-0.5吧,还不止!!!