【问题标题】:VBA to come up with all the combinations of two columns of dataVBA想出两列数据的所有组合
【发布时间】:2017-01-14 01:20:50
【问题描述】:

我有两列数据(A 列,B 列),我想在 C 和 D 列中列出这些数据的所有组合。即如果 A 列在列表中有 5 个数字,B 列在列表中有 3 个数字,我应该在 C 和 D 列中列出 15 个组合。这只是一个示例,A 和 B 列中的数据长度动态变化。

我对 VBA 还是很陌生,所以如果有一个简单的分步指南,将不胜感激。

【问题讨论】:

    标签: excel vba


    【解决方案1】:

    此操作不需要 VBA。

    C1中输入:

    =INDEX(A:A,ROUNDUP(ROW()/COUNT(B:B),0))
    

    然后抄下来。在 D1 中输入:

    =INDEX(B:B,MOD(ROW()-1,COUNT(B:B))+1)
    

    然后抄下来。

    您可以从任一列表中添加或删除项目。您可以在任一列表中使用数字或文本值。

    编辑#1

    要删除 CD 列底部不必要的零,在 C1 中使用:

     =IF(ROW()>COUNT(A:A)*COUNT(B:B),"",INDEX(A:A,ROUNDUP(ROW()/COUNT(B:B),0)))
    

    在向下复制之前和在 D1 中使用:

    =IF(ROW()>COUNT(A:A)*COUNT(B:B),"",INDEX(B:B,MOD(ROW()-1,COUNT(B:B))+1))
    

    这是基于知道只能有 Na X Nb 种组合。

    【讨论】:

    • 这很好用!谢谢你。有没有办法在完成组合后排除 0?
    • @Max 查看我的EDIT#1
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-19
    • 1970-01-01
    • 2018-06-17
    • 2013-11-15
    • 2016-10-19
    • 1970-01-01
    相关资源
    最近更新 更多