|
本帖最后由 laoau138 于 2017-3-27 09:25 编辑
用VBA数组查找按下面两种情况改写
- Sub 找全部()
- Dim arr, br(1), x&, y&, t&, i&, s$
- arr = Range("a1").CurrentRegion
- x = Abs(arr(1, 1) - 99): t = 1
- For i = 2 To UBound(arr)
- y = Abs(arr(i, 1) - 99)
- If x > y Then
- x = y: t = i
- br(0) = arr(t, 1): br(1) = t
- ElseIf x = y Then
- br(0) = br(0) & " " & arr(i, 1): br(1) = br(1) & " " & i
- End If
- Next
- For i = 0 To UBound(Split(br(0)))
- s = s & vbCrLf & " 单元格地址为 " & Cells(Split(br(1))(i), 1).Address(0, 0) & " 的 " & Split(br(0))(i)
- Next
- MsgBox "最接近99的数是:" & vbCrLf & s
- End Sub
复制代码
用VBA数组查找按下面两种情况改写.rar
(14.65 KB, 下载次数: 5)
|
|