永发信息网

如何在excel表格同一行中(A到I)产生1到9不重复的整数,每个单元格一个整数。

答案:3  悬赏:70  手机版
解决时间 2021-11-12 22:19
  • 提问者网友:聂風
  • 2021-11-12 10:46
如何在excel表格同一行中(A到I)产生1到9不重复的整数,每个单元格一个整数。
最佳答案
  • 五星知识达人网友:逃夭
  • 2021-11-12 11:28
使用辅助数据,产生数组比较简单:
原理:
1用RAND()在9个单元格中产生9个随机数;
2用RANK函数进行排序,排序结果为1-9之间的整数。
具体操作:
1、启动Excel并打开工作表,选择J1:R1单元格,在编辑栏中输入公式"=RAND()",按Ctrl+Enter键结束输入,此时在单元格中产生随机数
2.选择A1:I1单元格,在编辑栏中输入公式"=RANK(J1:R1,J1:R1)",按Ctrl+Shift+Enter键结束公式的输入,此时选择单元格中获得需要的随机整数
3.按F9,可以产生不同的排列;

参考:“
Excel工作表中产生不重复随机整数的两种方法
2016-03-19 见水还是水
全部回答
  • 1楼网友:鸽屿
  • 2021-11-12 13:13
还有缺陷。勉强用吧。若想完美,找VB老师吧。

按F9键随机生成数据。
F2=RAND()
G2RANK(F2,$F$2:$F$25)
两公式下拉至第25行。若为美观计,这部分内容可以隐藏或者字体设为无色。
A2=IF(INDEX({1;1;1;1;1;1;1;1;1;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0},G2)=1,1,"")
E2=IF(SUM($A2:D2)=1,"",1)
两公式下拉至第25行。
B2=IF(OR(ROUND(RAND()*1,0)=0,SUM($A2:A2)=1),"",1)复制到C2
B3=IF(OR(SUM(B$2:B2)=B$26,SUM($A3:A3)=1,ROUND(RAND()*1,0)),"",1)复制到蓝色区域。
A27=SUM(A2:A25)复制到E列
偶有27数值行不等于26行对应单元格数值的情况,这是不符合要求的,可以用条件格式设置警示。
遇到这种情况,继续按F9键跳过。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯