EXCEL用VBA解决排列组合问题

2025-03-04 08:14:20
推荐回答(3个)
回答1:

我有自定义函数可以解决。

见图:

回答2:

Sub pl()
Dim j, r, ar, arr
With ActiveSheet
j = .[A65536].End(xlUp).Row
ar = .Range("A1:B" & j)
ReDim arr(1 To UBound(ar) - 2, 1 To 3)
For r = 1 To UBound(ar)
If r < UBound(ar) - 1 Then
arr(r, 1) = ar(r, 1)
arr(r, 2) = ar(r + 1, 1)
arr(r, 3) = ar(r + 2, 1)
End If
Next
.Cells(1, 3).Resize(r - 3, 3) = arr
End With
End Sub

回答3:

如果xy可变,那就需要在VBA中使用递归调用