Excel如果想A1:A10=B1:B10里随机一个数,且A1:A10相邻两个数不能相同怎么设函数?注:B1~B10里的数据是各不相同
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/28 10:30:52
![Excel如果想A1:A10=B1:B10里随机一个数,且A1:A10相邻两个数不能相同怎么设函数?注:B1~B10里的数据是各不相同](/uploads/image/z/10180469-29-9.jpg?t=Excel%E5%A6%82%E6%9E%9C%E6%83%B3A1%EF%BC%9AA10%3DB1%EF%BC%9AB10%E9%87%8C%E9%9A%8F%E6%9C%BA%E4%B8%80%E4%B8%AA%E6%95%B0%2C%E4%B8%94A1%EF%BC%9AA10%E7%9B%B8%E9%82%BB%E4%B8%A4%E4%B8%AA%E6%95%B0%E4%B8%8D%E8%83%BD%E7%9B%B8%E5%90%8C%E6%80%8E%E4%B9%88%E8%AE%BE%E5%87%BD%E6%95%B0%3F%E6%B3%A8%EF%BC%9AB1%7EB10%E9%87%8C%E7%9A%84%E6%95%B0%E6%8D%AE%E6%98%AF%E5%90%84%E4%B8%8D%E7%9B%B8%E5%90%8C)
Excel如果想A1:A10=B1:B10里随机一个数,且A1:A10相邻两个数不能相同怎么设函数?注:B1~B10里的数据是各不相同
Excel如果想A1:A10=B1:B10里随机一个数,且A1:A10相邻两个数不能相同怎么设函数?
注:B1~B10里的数据是各不相同
Excel如果想A1:A10=B1:B10里随机一个数,且A1:A10相邻两个数不能相同怎么设函数?注:B1~B10里的数据是各不相同
操作:说明:
C1=INT(RAND()*10)+1 C1在1到10之间取一个随机数
C2=INT(RAND()*9)+1 C2在1到9之间取一个随机数
C2下拉到C10
D1=C1 D1是1到10之间的一个数
D2=IF(C2=D1,C2+1,C2) C2是1到9之间的一个数,C2+1就是2到10之间的一个数,
D2则是与D1不相同的1到10之间的一个数
D2下拉到D10 Dn则是与Dn-1不相同的1到10之间的一个数(10>=n>2)
A1=INDEX($B$1:$B$10,D1) A列是B列中以D列为序号的数
A1下拉到A10
总说明:
因B1~B10里的数据是各不相同,只要D1~D10里相邻两个数不相同,就能保证A1~A10相邻两个数不相同.
以下,对上面的算法再作一些改进,这样省去了辅助列D:
C1=INT(RAND()*10)+1
C2=MOD(C1+INT(RAND()*9),10)+1
C2下拉到C10
A1=INDEX($B$1:$B$10,C1)
A1下拉到A10
以下,对上面的算法再作更进一步的改进,这样还可省去辅助列C:
A1=INDEX($B$1:$B$10,INT(RAND()*10)+1)
A2=INDEX($B$1:$B$10,MOD(MATCH(A1,$B$1:$B$10,0)+INT(RAND()*9),10)+1)
A2下拉到A10