|
发表于 2016-1-7 14:54
|
显示全部楼层
本楼为最佳答案
判断条件大于小于号搞错了。。。。。- Sub 计算()
- Dim x#, y#, x1#, y1#
- arr = Sheets("原始数据").[a1].CurrentRegion
- brr = Sheets("输出").[a1].CurrentRegion
- For i = 2 To UBound(brr)
- x = brr(i, 3): y = brr(i, 4): pci = brr(i, 2)
- min1 = 100000: min2 = 100000
- For j = 2 To UBound(arr)
- x1 = arr(j, 3): y1 = arr(j, 4)
- celname = arr(j, 1) & "(A" & j & ")"
- If x1 <> x And y1 <> y Then
- s = Distance(x, y, x1, y1)
- If arr(j, 2) = pci Then
- If min1 > s Then
- min1 = s
- brr(i, 5) = s
- brr(i, 6) = celname
- End If
- Else
- If min2 > s Then
- min2 = s
- brr(i, 7) = s
- brr(i, 8) = celname
- End If
- End If
- End If
- Next
- Next
- Sheets("输出").[a1].CurrentRegion = brr
- End Sub
复制代码 |
|