EXCEL:组合函数combin

2013-08-25 16:58 阅读 468 次 评论关闭

在数学上,我们都学习跟排列组合的算法及概念,那么,在Excel中,如何使用组合函数combin呢?

一、combin组合函数的语法

函数功能:计算从给定数目的对象集合中提取若干对象的组合数。

利用函数COMBIN可以确定一组对象所有可能的组合数。

语法

COMBIN(number,number_chosen)

Number 为对象的总数量。

Number chosen  为每一组合中对象的数量。

说明

数字参数截尾取整。
如果参数为非数值型,则函数 COMBIN 返回错误值 #VALUE!。如果 number < 0、number_chosen <0 或 number < number_chosen,COMBIN 返回错误值 #NUM!。不论其内部顺序,对象组合是对象整体的任意集合或子集。组合与排列不同,排列数与对象内部顺序有关。组合数计算公式如下,式中 number = n ,number_chosen = k:

二、COMBIN函数实例

比如,要想从6个队员中,选出2个队员参加比赛,那么,总的有几种组合,即总的有几种可能?

我们可以使用函数公式: =COMBIN(6,2) 就可以得到组合的个数,函数返回15;

也就是说,从6个队员中,选出两个队员参加比赛,总的有15种搭配。

下面,再说个简单例子:

有三个球,分别为红、绿、蓝,现在要从这三个球中选出两个球来,共有几种搭配、组合?

使用函数就可以得到:=COMBIN(3,2) 函数返回的结果是3;

注意,COMBIN函数只返回总的组合数,并未给出具体到底是哪几种组合,下面,我们人工给出如上三个球的组合方案,分别是:

1、红、绿  2、红、蓝 3、绿蓝  就这三种。

三、COMBIN的知识扩展

如果你想知道或获得组合数中的每一种组合方式,得使用VBA了,下面提供几种代码,供你参考。

①combin(6,2)的组合

Sub ListCombin()
Dim x, y As Integer
For x = 1 To 5
For y = x + 1 To 6
ActiveCell.FormulaR1C1 = x & ", " & y
ActiveCell.Offset(1, 0).Select
Next y
Next x
End Sub

②combin(8,6)的组合

Sub ListCombin()
Dim h, i, j, k, l, m As Integer
For h = 1 To 3
For i = h + 1 To 4
For j = i + 1 To 5
For k = j + 1 To 6
For l = k + 1 To 7
For m = l + 1 To 8
ActiveCell.FormulaR1C1 = h & "-" & i & "-" & j & "-"& k & "-" & l & "-" & m
ActiveCell.Offset(1, 0).Select
Next m
Next l
Next k
Next j
Next i
Next h
End Sub

以上的两种情况,都在VBA环境下运行,所得到的组合方案,会在Excel单元格中填充出组合的内容。如果你想了解与排列有关的知识,请参阅文章:http://www.dzwebs.net/3754.html

版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:EXCEL:组合函数combin | 猎微网
分类:Excel 标签:, ,

评论已关闭!