卡饭网 > excel > 正文

Excel组合函数combin

来源:本站整理 作者:梦在深巷 时间:2013-04-03 07:58:24

一、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

相关推荐