天天看點

Excel函數輸入随機不重複數值

在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單元格

繼續閱讀