excel 排列组合公式?

有算组合的函数吗? 比如C(50,3)=19600 excel里有公式吗?

EXCEL有排列和组合函数。

排列函数为PERMUT函数,组合函数为COMBIN函数。

组合函数:计算从给定数目的对象集合中提取若干对象的组合数。利用函数 COMBIN 可以确定一组对象所有可能的组合数。

语法:COMBIN(number,number_chosen)

排列函数:返回从给定数目的对象集合中选取的若干对象的排列数。排列为有内部顺序的对象或事件的任意集合或子集。排列与组合不同,组合的内部顺序无意义。此函数可用于彩票抽奖的概率计算。

语法:PERMUT(number,number_chosen)

扩展资料:

Excel函数大全:

AVERAGE 返回选定数据库项的平均值。

COUNT 计算数据库中包含数字的单元格的个数。

COUNTA计算数据库中非空单元格的个数。

DGET 从数据库中提取满足指定条件的单个记录。

MAX 返回选定数据库项中的最大值。

MIN 返回选定数据库项中的最小值。

PRODUCT 乘以特定字段(此字段中的记录为数据库中满足指定条件的记录)中的值。

STDEV根据数据库中选定项的示例估算标准偏差。

STDEVP 根据数据库中选定项的样本总体计算标准偏差。

SUM 对数据库中满足条件的记录的字段列中的数字求和。

VAR根据数据库中选定项的示例估算方差。

VARP 根据数据库中选定项的样本总体计算方差。

GETPIVOTDATA 返回存储在数据透视表中的数据。

参考资料来源:百度百科-excel函数

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-10-07

Excel有排列组合公式,PERMUT为排列函数,COMBIN为组合函数。

1、电脑打开Excel表格,输入组合函数=COMBIN(50,3)。


2、回车就会得到19600。


3、输入排列公式=PERMUT(50,3)/PERMUT(3,3)。


4、回车就可以了。

本回答被网友采纳
第2个回答  2018-02-22
EXCEL有排列和组合函数。
排列函数为PERMUT函数,组合函数为COMBIN函数。
C(50,3)=19600 的公式为:

=COMBIN(50,3)本回答被网友采纳
第3个回答  2019-12-16
Private
Sub
CommandButton1_Click()
Dim
arr
Range("A1:Q65536").ClearContents
arr
=
[A1:Q65536]
l
=
1
m
=
1
For
i1
=
1
To
28
For
i2
=
i1
+
1
To
29
For
i3
=
i2
+
1
To
30
For
i4
=
i3
+
1
To
31
For
i5
=
i4
+
1
To
32
For
i6
=
i5
+
1
To
33
arr(l,
m)
=
i1
&
"
"
&
i2
&
"
"
&
i3
&
"
"
&
i4
&
"
"
&
i5
&
"
"
&
i6
l
=
l
+
1
If
l
=
65537
Then
m
=
m
+
1
l
=
1
End
If
Next
i6
Next
i5
Next
i4
Next
i3
Next
i2
Next
i1
For
l
=
1
To
10
For
m
=
1
To
17
Cells(l,
m)
=
arr(l,
m)
Next
m
Next
l
'[A1:Q65536]
=
arr
End
Sub
(33*32*31*30*29*28)/(6*5*4*3*2*1)=1107568
所以共有1107568个不同数字的组合。
我在计算时,把每个组合的6个不相同的数字,各用一个空格符分隔,存放在一个单元格中。
实际运算时间仅10秒钟即可完成,主要时间将花费在填充单元格上,全部填满约半小时。
因为1107568=65536*16+58992
所以全部填满后A-P会全部填满,Q列填到第58992行。
[A1:Q65536]
=
arr语句用来填充单元格,因运行时费时较多,我暂时把它注释掉了。代之以如下语句用来显示前10行数据,作示范。
For
l
=
1
To
10
For
m
=
1
To
17
Cells(l,
m)
=
arr(l,
m)
Next
m
Next
l
第4个回答  2019-01-03
从0到9十个数任意组合用vba
sub
组合()
application.screenupdating
=
false
x
=
1
for
i
=
9
to
3
step
-1
for
j
=
i
-
1
to
2
step
-1
for
k
=
j
-
1
to
1
step
-1
for
n
=
k
-
1
to
0
step
-1
cells(x,
1).value
=
i
&
j
&
k
&
n
x
=
x
+
1
next
n
next
k
next
j
next
i
application.screenupdating
=
true
end
sub
右键工作表标签,把代码复制进去,按f5运行程序,你会看见结果会显示在a列中
9876
9875
9874
9873
9872
9871
9870
9865
9864
9863
9862
9861
9860
9854
9853
9852
9851
9850
9843
9842
9841
9840
9832
9831
9830
9821
9820
9810
9765
9764
9763
9762
9761
9760
9754
9753
9752
9751
9750
9743
9742
9741
9740
9732
9731
9730
9721
9720
9710
9654
9653
9652
9651
9650
9643
9642
9641
9640
9632
9631
9630
9621
9620
9610
9543
9542
9541
9540
9532
9531
9530
9521
9520
9510
9432
9431
9430
9421
9420
9410
9321
9320
9310
9210
8765
8764
8763
8762
8761
8760
8754
8753
8752
8751
8750
8743
8742
8741
8740
8732
8731
8730
8721
8720
8710
8654
8653
8652
8651
8650
8643
8642
8641
8640
8632
8631
8630
8621
8620
8610
8543
8542
8541
8540
8532
8531
8530
8521
8520
8510
8432
8431
8430
8421
8420
8410
8321
8320
8310
8210
7654
7653
7652
7651
7650
7643
7642
7641
7640
7632
7631
7630
7621
7620
7610
7543
7542
7541
7540
7532
7531
7530
7521
7520
7510
7432
7431
7430
7421
7420
7410
7321
7320
7310
7210
6543
6542
6541
6540
6532
6531
6530
6521
6520
6510
6432
6431
6430
6421
6420
6410
6321
6320
6310
6210
5432
5431
5430
5421
5420
5410
5321
5320
5310
5210
4321
4320
4310
4210
3210
相似回答