如何不用函数、vba在excel中生成10选5的所有排列组合? 您所在的位置:网站首页 表格函数随机不重复怎么设置出来 如何不用函数、vba在excel中生成10选5的所有排列组合?

如何不用函数、vba在excel中生成10选5的所有排列组合?

2024-07-11 21:14| 来源: 网络整理| 查看: 265

如何不用函数、vba在excel中生成10选5的所有排列组合? 2020年1月8日 作者:水星Excel 13,642 次浏览 暂无评论

在Excel中列举排列组合也是一个比较常见的需求。

 

比如给你0到9十个数字,列出从中选择5个数字的所有排列。

 

上述问题如果用函数或者vba来做,都会比较复杂,而且如果不是经常做这个,一时半会是做不出来的,要花不少时间去思考。

 

今天分享一种快速简单又高效的生成所有排列的方法,该方法不仅适用于数字也适用于任意字符串。

 

接下来,让我们一起来看看是如何实现的?

 

1.构造数据源,如下所示:

 

 

2.依次隔一列复制粘贴5列相同的数据,如下所示:

 

 

3.单击A1单元格,创建数据透视表,勾选【将此数据添加到到数据模型】(最关键的一步),如下所示:

 

 

4.然后依次单击C1、E1、G1、I1单元格,创建数据透视表,保持【创建数据透视表】对话框中的其它选项不变,勾选【将此数据添加到到数据模型】,如下所示:

 

 

5.最后任意选择其中一个数据透视表,单击数据透视表字段中的全部,可以看到5个单元格区域都在数据透视表列表中,如下图所示:

 

 

6.然后依次将【数据】字段都拉到数据透视表的行区域,设置数据透视表的【报表布局】为【以表格形式显示】,然后勾选【重复所有项目标签】,如下所示,10选5的所有排列数都出来了。

 

 

7.由于10选5的排列数是不能有重复出现的,最后添加如下的数组公式把每一行的数据不重复的筛选出来即可。

=MAX(COUNTIF(A2:E2,A2:E2))=1

如下图所示

通过上述的步骤,就可以生成10选5的所有排列数。

其它相关文章推荐:什么是指针?vba中OnAction属性指定宏名时如何传递参数?如何用vba创建空白的文本文件?在Excel中计算复利,居然一个函数全搞定!!!如何在vba中使用Word Application对象的邮件合并事件?如何在vba中批量对多个工作表执行相同的操作? 分类 :  Excel , Excel数据透视表 标签 :  10选5 , 排列 , 排列数 , 数据模型 , 组合 , 组合数        

声明: 本站文章均属原创,未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则视为侵权。如果想要每天都收到本站的技术文章推送,可以微信搜索公众号:水星Excel或者Excel_Office关注。其它事宜请加QQ:1722187970 或微信号:xycgenius 联系。 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有