Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel VBA提供两列数据的所有组合_Excel_Vba - Fatal编程技术网

Excel VBA提供两列数据的所有组合

Excel VBA提供两列数据的所有组合,excel,vba,Excel,Vba,我有两列数据A列,B列,我想在C列和D列列出这些数据的所有组合。也就是说,如果A列在列表中有5个数字,B列在列表中有3个数字,我应该在C列和D列中列出15个组合。这只是一个示例,A列和B列中的数据长度会动态变化 我是VBA的新手,所以请提供一个简单的分步指南 此操作不需要VBA 在C1中输入: 然后抄下来。在D1中输入: 然后抄下来 您可以从任一列表中添加或删除项目。您可以在任一列表中使用数字或文本值 编辑1 要删除C1中C列和D列底部不必要的零,请使用: 在复制和使用之前: 这是基于知道只能有

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

我是VBA的新手,所以请提供一个简单的分步指南


此操作不需要VBA

在C1中输入:

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

然后抄下来

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

编辑1

要删除C1中C列和D列底部不必要的零,请使用:

在复制和使用之前:


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

这非常有效!非常感谢。有没有办法在完成组合后排除0?@Max请参阅我的EDIT1
=INDEX(A:A,ROUNDUP(ROW()/COUNT(B:B),0))
=INDEX(B:B,MOD(ROW()-1,COUNT(B:B))+1)
 =IF(ROW()>COUNT(A:A)*COUNT(B:B),"",INDEX(A:A,ROUNDUP(ROW()/COUNT(B:B),0)))
=IF(ROW()>COUNT(A:A)*COUNT(B:B),"",INDEX(B:B,MOD(ROW()-1,COUNT(B:B))+1))