2016 - 2024

感恩一路有你

使用VBA进行Excel表格的数组组合

浏览量:3002 时间:2024-06-28 21:03:48 作者:采采

在Excel中,有时候我们需要从一列中选择特定数量的数字进行组合。通过使用VBA编程,我们可以快速实现这个功能。

打开VBA编辑器并插入模块

首先,点击Excel菜单栏上的【开发工具】,然后选择【Visual Basic】进入VBA编辑器。在VBA编辑器的菜单栏上点击【插入】,再选择【模块】来插入一个新模块。

编写VBA代码

在VBA编辑器的代码框中输入以下程序:

Sub Zuhe()
    Dim i, j, k, l, m As Long
    Dim a, b, c, d As String
    m  0 '将m的初始值设为0
    Set mysheet1  ("Sheet1")
    For i  1 To 12 '每个数值都有12次的选择机会
        For j  1 To 12
            For k  1 To 12
                For l  1 To 12
                    a  mysheet1.Cells(i, 1) '将第i个单元格里面的数值赋给a
                    If j <> i Then '如果已经选择第i个单元格里面的数值,则其他的不能再选择了
                        b  mysheet1.Cells(j, 1)
                        If k <> i And k <> j Then '如果已经选择第i、j个单元格里面的数值,则其他的不能再选择了
                            c  mysheet1.Cells(k, 1)
                            If l <> i And l <> j And l <> k Then '如果已经选择第i、j、k个单元格里面的数值,则其他的不能再选择了
                                d  mysheet1.Cells(l, 1)
                                m  m   1
                                mysheet1.Cells(m, 2)  a  b  c  d '将选择出来的数值进行组合放到第2列
                            End If
                        End If
                    End If
                Next
            Next
        Next
    Next
End Sub

运行程序并查看结果

点击VBA编辑器工具栏中的“运行”图标或按下【F5】键来运行程序。程序运行完成后,在Excel表格的第2列中即可看到计算结果。在本例中,共有11880行组合,与计算的组合数(C12*11*10*911880)相符。

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。