|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
- Sub test()
- Dim arr(), j As Double, k As Double, i As Double, ij As Double
- Dim rArr(), n%, num, a, b, c, d, w%, x%, y%, z%, kk&
-
- arr = Range("A1:A41").Value
- n = UBound(arr)
- num = Application.Combina(n, 4)
- j = [C2].Value: k = [D2].Value
- ReDim rArr(1 To num, 1 To 6)
-
- For w = 1 To n
- a = arr(w, 1)
- For x = 1 To n
- If x <> w Then
- b = arr(x, 1)
- For y = 1 To n
- If y <> w And y <> x Then
- c = arr(y, 1)
- For z = 1 To n
- If z <> w And z <> x And z <> y Then
- d = arr(z, 1)
- i = a / b * c / d
- ij = Abs(i - j)
- If ij < k Then
- kk = kk + 1
- rArr(kk, 1) = a
- rArr(kk, 2) = b
- rArr(kk, 3) = c
- rArr(kk, 4) = d
- rArr(kk, 5) = i
- rArr(kk, 6) = i - j
- End If
- End If
- Next z
- End If
- Next y
- End If
- Next x
- Next w
- If kk > 0 Then
- Range("F10").Resize(kk, 6) = rArr
- Else
- MsgBox "没有结果"
- End If
- End Sub
复制代码 |
|