从单元格列表中popup一个随机值
我有一个类似于这个问题的问题,但有点不同:
比方说,我有这样的数据:
CAR NAME COLOR LIST OF COLORS Car1 ? Red Car2 ? Blue Car3 ? Green Car4 ? Black
我想随机分配所有的颜色到所有的汽车没有重复,即
CAR NAME COLOR LIST OF COLORS Car1 Green Red Car2 Black Blue Car3 Blue Green Car4 Red Black
有没有办法让一个单元格从一个列表中随机select,除了已经input在另一个范围内的值?
在D2中input:
=RAND()
并抄下来。 在B2中input:
=INDEX(C$2:C$5,MATCH(LARGE(D$2:D$5,ROW()-1),D$2:D$5,0))
并抄下来:
一种方法是洗牌arrays。 在JavaScript中做相当容易。
如何随机化(洗牌)一个JavaScript数组?
shuffle = function(o){ for(var j, x, i = o.length; i; j = Math.floor(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x); // rotate array vertical var vArray = []; for (var i = 0; i < o.length; i++) { vArray.push([o[i]]); } return vArray; }
电子表格示例: