在A1單元格中輸入随機函數
=RANDBETWEEN(1,10)
此函數将在1至10之間随機提取1個整數。
A2單元格輸入
={LARGE(IF(COUNTIF($A$1:A1,ROW($1:$10)),,ROW($1:$10)),RANDBETWEEN(1,10-ROW(A1)))}
此函數為随機不重複的重要部分
注:{……}這個括号是同時安Ctrl+Shift+Enter得到的數組公式形式,無需輸入。
如A1單元格的随機函數得出的值為8:
(1)
COUNTIF($A$1:A1,ROW($1:$10)
部分将提示A1單元格數字在ROW($1:$10)數組即{1;2;3;4;5;6;7;8;9;10}中的位置。則COUNTIF($A$1:A1,ROW($1:$10)得到的數組為{0;0;0;0;0;0;0;1;0;0}
(2)
IF(COUNTIF($A$1:A1,ROW($1:$10)),,ROW($1:$10))
部分根據之前COUNTIF得到的數組,計算得到{1;2;3;4;5;6;7;0;9;10}
(3)
RANDBETWEEN(1,10-ROW(A1))
此時計算得到RANDBETWEEN(1,{10}),随機産生1到10的資料。
LARGE(array,k)
函數此時将IF函數計算得到{1;2;3;4;5;6;7;0;9;10}、RANDBETWEEN函數得到的随機數代入;
按住<b>Ctrl+Shift+Enter</b>輸入為數組,就得到一個1至10且除A1單元格8以外的數值。
A3:A10單元格由A2拖拉公式可以得到。
A3單元格