用vb或者vba在excel里编一个排列组合的小程序

求高人用vb或者vba在excel里编一个排列组合的小程序,要求是这样运算的:在A列中输入一列数据 1、2、3、4......n(数据个数可以自定),要求自动排列组合,结果按顺序显示在B列里,组合出的数据中不能有重复的元素。比如A列中输入1、2、3,B列中就会列出1、2、3、12、13、21、23、31、32、123、132、213、231、312、321。

VBA语言:
在A列中输入一列数据 ,自动排列组合,结果按顺序显示在B列:
Private Sub numzh()
Dim h, l, n1, n2
h = [a65536].End(xlUp).Row
l = 1
For n1 = 1 To h
Range("b" & l) = Range("a" & n1)
l = l + 1
Next
n2 = 1
Do While n1 > h
For n1 = 1 To h
If n2 = n1 Then
n1 = n1 + 1
End If
If n1 > h Then Exit Sub
Range("b" & l) = Range("a" & n2) & Range("a" & n1)
l = l + 1
Next
n2 = n2 + 1
Loop
End Sub
你看看可以吗?
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-08-21
多给点分,再留个邮箱,或许会有人做好excel程序文件直接发给你,现在即使给你一堆程序你也难以真正在excel里去实现。
第2个回答  2011-08-23
assdsd
第3个回答  2011-08-20
高手啊,根本看不懂
相似回答