發(fā)布時間:2025-03-14 文章來源:xp下載站 瀏覽:
辦公軟件是指可以進行文字處理、表格制作、幻燈片制作、圖形圖像處理、簡單數(shù)據(jù)庫的處理等方面工作的軟件。目前辦公軟件朝著操作簡單化,功能細化等方向發(fā)展。辦公軟件的應用范圍很廣,大到社會統(tǒng)計,小到會議記錄,數(shù)字化的辦公,離不開辦公軟件的鼎力協(xié)助。另外,政府用的電子政務,稅務用的稅務系統(tǒng),企業(yè)用的協(xié)同辦公軟件,這些都屬于辦公軟件。 在 Excel 中,生成隨機數(shù)可以用Rand函數(shù)或RandBetween函數(shù),其中前者用于生成 0 到 1 的小數(shù)隨機數(shù),后者用于生成指定范圍的整數(shù)隨機數(shù)。Rand函數(shù)也可以生成指定范圍的隨機數(shù),但要用公式 =RAND()*(b-a)+a,且生成的隨機數(shù)仍然為小數(shù)。 直接用Rand函數(shù)或RandBetween函數(shù)生成隨機數(shù),都可能產(chǎn)生重復的隨機數(shù),如果要求生成不重復的隨機數(shù),需先產(chǎn)生種子再用種子生成隨機數(shù),或用 Small + If + CountIf + Row + Int + Rand 函數(shù)生成。在默認情況,用Rand函數(shù)或RandBetween函數(shù)生成的隨機數(shù)容易發(fā)生變化,如果要求生成不變的隨機后,需要把它們轉(zhuǎn)為數(shù)值。 一、Excel隨機數(shù)產(chǎn)生函數(shù)的語法(一)Rand函數(shù) 1、表達式:RAND() 2、說明: A、Rand函數(shù)用于生成 0 到 1 之間的隨機數(shù);如果要生成 a 與 b 之間的隨機數(shù),需要使用 RAND()*(b-a)+a;例如生成 1 到 100 的隨機數(shù),可以用公式 =RAND()*(100-1)+1。 B、用Rand函數(shù)生成的隨機數(shù),每次計算工作表時會變?yōu)榱硪粋隨機數(shù),如果要求不變,輸入公式 =RAND() 后,保持編輯狀態(tài),按 F9 把公式轉(zhuǎn)為數(shù)值,具體見下文的實例。 (二)RandBetween函數(shù) 1、表達式:RANDBETWEEN(Bottom, Top) 2、說明: A、RandBetween函數(shù)用于生成任意兩個指定數(shù)之間的隨機數(shù),參數(shù) Bottom 為指定數(shù)值范圍的最小值、Top 為指定數(shù)值范圍的最大值。 B、與Rand函數(shù)一樣,RandBetween函數(shù)生成的隨機數(shù),每次計算工作表時也會變?yōu)榱硪粋隨機數(shù),如果要求已生成的隨機數(shù)不變,輸入完公式后,按 F9 把公式轉(zhuǎn)為數(shù)值即可。 二、Excel隨機數(shù)產(chǎn)生函數(shù) Rand 的使用實例(一)生成 0 到 1 之間的固定不變的小數(shù)隨機數(shù) 選中 A1 單元格,輸入公式 =rand(),按回車,返回隨機數(shù) 0.500716885;雙擊 A1,按回車,隨機數(shù)變?yōu)?0.140809335,每執(zhí)行一次公式,隨機數(shù)會變化;再次雙擊 A1,按 F9,則公式轉(zhuǎn)為隨機數(shù) 0.859460188902102,再怎么雙擊 A1,也不會出現(xiàn)公式,隨機數(shù)也不會再變化;操作過程步驟,如圖1所示: 圖1 (二)生成指定范圍的隨機數(shù) 1、假如要生成 100 到 1000 之間的隨機數(shù)。雙擊 A1 單擊格,把公式 =INT(RAND()*(1000-100)+100) 復制到 A1,按回車,返回隨機數(shù)816;操作過程步驟,如圖2所示: 圖2 2、公式 =INT(RAND()*(1000-100)+100) 說明: 用 Rand 函數(shù)生成 100 到 1000 之間的隨機數(shù)可用公式 =RAND()*(b-a)+a,a 為 100,b 為 1000,但用此公式生成的隨機數(shù)是小數(shù),如果要生成整數(shù)的隨機數(shù), 要用 Int 函數(shù)取整。 三、Excel隨機數(shù)產(chǎn)生函數(shù) RandBetween 的使用實例(一)生成指定范圍的固定不變的整數(shù)隨機數(shù) 假如要生成 0 到 100 之間的隨機數(shù)。雙擊 A1 單元格,把公式 =RANDBETWEEN(0,100) 復制到 A1,按回車,返回隨機數(shù) 57;雙擊 A1,按回車,隨機數(shù)變?yōu)?15,每執(zhí)行一次公式,隨機數(shù)也會變化;再次雙擊 A1,按 F9,把公式轉(zhuǎn)為數(shù)值 10,再雙擊 A1,不會再出現(xiàn)公式;操作過程步驟,如圖3所示: 圖3 (二)生成正負數(shù)之間的隨機數(shù) 假如要生成 -100 到 100 之間的隨機數(shù)。雙擊 A1 單元格,把公式 =RANDBETWEEN(-100,100) 復制到 A1,按回車,返回隨機數(shù) 9;再次雙擊 A1,按回車,返回隨機數(shù) -99;操作過程步驟,如圖4所示: 圖4 四、Excel隨機數(shù)產(chǎn)生函數(shù)的擴展應用(一)生成固定不變的隨機數(shù) Excel生成固定不變的隨機數(shù)有兩種方法,一種為輸入公式后按 F9,把公式轉(zhuǎn)為數(shù)值,在上面已經(jīng)介紹過;另一種方法為把生成的隨機數(shù)復制為數(shù)值,此方法可以批量把生成的隨機數(shù)轉(zhuǎn)為固定不變的數(shù)值,具體方法如下: 雙擊 A1 單元格,里面是一個生成隨機數(shù)的公式,按回車,生成新的隨機數(shù);框選 A1:B9,按 Ctrl + C 復制;當前選項卡為“開始”,單擊窗口左上角的“粘貼”,在彈出的選項中選擇“粘貼數(shù)值”下的“值”圖標,則選中的所有單元格中的生成隨機數(shù)公式轉(zhuǎn)為數(shù)值,再次雙擊 A1,已經(jīng)沒有公式;操作過程步驟,如圖5所示: 圖5 (二)生成不重復的隨機數(shù) (1)先生成種子,再用種子生成不重復的隨機數(shù) 1、生成不重復的小數(shù)隨機數(shù) A、生成種子。雙擊 A1 單元格,把公式 =RAND() 復制到 A1,按回車,生成一個小數(shù)隨機數(shù);選中 A1,把鼠標移到 A1 右下角的單元格填充柄上,按住左鍵,往下拖一直拖到 A10,則所經(jīng)過單元格都變?yōu)橥浑S機數(shù),按 Ctlr + S 保存,則 A1:A10 更新為不同的隨機數(shù); B、生成不重復隨機數(shù)。雙擊 B1,把公式 =RAND() 復制到 B1,輸入 *A1,按回車,返回一個新的隨機數(shù);選中 B1,把鼠標移到 B1 右下角的單元格填充柄上,鼠標變?yōu)楹谏犹柡螅p擊左鍵,則 B2:B10 變?yōu)榕c B1 一樣的隨機數(shù),按 Ctrl + S 保存,B2:B10 變?yōu)椴煌碾S機數(shù);操作過程步驟,如圖6所示: 圖6 2、生成不重復的指定范圍的整數(shù)隨機數(shù) A、假如要生成 50 到 100 之間的隨機數(shù)。雙擊 A2 單元格,把公式 =RANDBETWEEN(50,100) 復制到 A2,按回車,生成一個種子隨機數(shù),用往下拖的辦法生成其它種子隨機數(shù); B、雙擊 B2,把公式 =INT(RANDBETWEEN(50,100)*A2/100) 復制到 B2,按回車,生成一個隨機數(shù),用雙擊 B2 單元格填充柄的方法生成其它隨機數(shù);操作過程步驟,如圖7所示: 圖7 C、公式 =INT(RANDBETWEEN(50,100)*A2/100) 說明: 先用 RANDBETWEEN(50,100) 產(chǎn)生 50 到 100 的隨機數(shù),再用該隨機數(shù)與 A2 中的種子隨機數(shù)相乘,然后再除 100(由于兩個 50 到 100 的數(shù)值相乘擴大了 100 倍,因此要縮小 100 倍),最后用 Int 函數(shù)取整。 提示:先生成種子再用種子生成隨機數(shù)不能保證生成的隨機數(shù)一定不重復,如果要求生成唯一的隨機數(shù),需要下文的方法。 (2)用 Small + If + CountIf + Row + Int + Rand 函數(shù)生成不會重復的隨機數(shù) A、假如要生成 1 到 12 之間的不重復隨機數(shù)。雙擊 A2 單元格,把公式 =SMALL(IF(COUNTIF(A$1:A1,ROW($1:$12))=0,ROW($1:$12)),INT(RAND()*(12-ROW(1:1))+1)) 復制到 A2,按 Ctrl + Shift + 回車,生成隨機數(shù) 6;把鼠標移到 A2 右下角的單元格填充柄上,鼠標變?yōu)楹谏犹柡螅峦弦恢蓖系?A13,則所經(jīng)過單元格全變?yōu)?6,按 Ctrl + S 保存,則 A2:A13 變?yōu)?1 到 12 的隨機數(shù);操作過程步驟,如圖8所示: 圖8 B、公式 =SMALL(IF(COUNTIF(A$1:A1,ROW($1:$12))=0,ROW($1:$12)),INT(RAND()*(12-ROW(1:1))+1)) 說明: [1]、A$1 表示對列相對引用、對行絕對引用($ 表示絕對引用),當往下拖時,A1 不會變?yōu)?A2、A3 等;當往右拖時,A1 會變?yōu)?B1、C1 等。A1 表示對列和行都是相對引用,當往下拖時,A1 會變?yōu)?A2、A3 等;當往右拖時,A1 會變?yōu)?B1、C1 等。 [2]、A$1:A1 用于返回當前單元格到拖到單元格的所有數(shù)值;當公式在 A2 時,A$1:A1 返回 A1,A1 為空,因此返回 0;當公式在 A3 時,A$1:A1 變?yōu)?A$1:A2,它以數(shù)組形式返回 A1、A2 中的數(shù)值,即返回 {0;5};其它的以此類推。 [3]、$1 表示對行的絕對引用,當往下拖時,1 不會變?yōu)?2、3 等;$12 與 $1 是一個意思;ROW($1:$12) 用于返回 1 到 12 的數(shù)組,即返回 {1;2;3;4;5;6;7;8;9;10;11;12}。 [4]、當公式在 A2 時 COUNTIF(A$1:A1,ROW($1:$12)) 變?yōu)?COUNTIF(A1,{1;2;3;4;5;6;7;8;9;10;11;12}),A1 為統(tǒng)計個數(shù)的范圍,數(shù)組為條件,執(zhí)行時,依次取條件數(shù)組中的每個元素統(tǒng)計在 A1 中出現(xiàn)的次數(shù),第一次執(zhí)行取條件數(shù)組的第一個元素 1,由于 A1 的數(shù)值為 0,因此統(tǒng)計結果為 0;第二次執(zhí)行取 2,統(tǒng)計結果也為 0;其它的以此類推;最后返回 {0;0;0;0;0;0;0;0;0;0;0;0}; 則 COUNTIF(A$1:A1,ROW($1:$12))=0 變?yōu)?{0;0;0;0;0;0;0;0;0;0;0;0}=0,接著,取數(shù)組中的每個元素與 0 比較,如果相等,返回 True,否則返回 False,最后返回 {TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}; 則 IF(COUNTIF(A$1:A1,ROW($1:$12))=0,ROW($1:$12)) 變?yōu)?IF({TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}, {1;2;3;4;5;6;7;8;9;10;11;12}),執(zhí)行時,依次取 IF 條件數(shù)組中的每個元素出來,如果為 True,返回第二個數(shù)組與之對應的元素,否則返回 False;由于條件數(shù)組中全為 True,因此返回 {1;2;3;4;5;6;7;8;9;10;11;12}; 1:1 表示對行的相對引用,往下拖時,1:1 會變?yōu)?2:2、3:3 等;ROW(1:1) 返回第一行的行號 1;12-ROW(1:1) 返回 11,12 是生成指定范圍隨機數(shù)的上限; RAND() 用于返回 0 到 1 的小數(shù)隨機數(shù),假如它返回 0.401319158944677,則 INT(RAND()*(12-ROW(1:1))+1) 變 INT(0.401319158944677*11+1),進一步計算變?yōu)?INT(4.414510748391450+1),接著,用 Int 函數(shù)取整,結果為 5; 則公式變?yōu)?=SMALL({1;2;3;4;5;6;7;8;9;10;11;12},5),最用 Small 函數(shù)返回數(shù)組中第 5 個最小的數(shù),即返回 5。 [5]、公式在 A3 時 COUNTIF(A$1:A2,ROW($1:$12)) 變?yōu)?COUNTIF(A$1:A2,{1;2;3;4;5;6;7;8;9;10;11;12}),執(zhí)行時,同樣依次取條件數(shù)組中的每個元素統(tǒng)計在 A1:A2 中的個數(shù),由于 A1 為 0,A2 為 5,因此 A1:A2 返回 {0;5};第一次執(zhí)行取條件數(shù)組中的 1,由于數(shù)組 {0;5} 中沒有 1,因此返回 0;第二次取 2,同樣返回 0;其它的以此類推,最后返回 {0;0;0;0;1;0;0;0;0;0;0;0}; 則 COUNTIF(A$1:A2,ROW($1:$12))=0 變?yōu)?{0;0;0;0;1;0;0;0;0;0;0;0}=0,計算結果為{TRUE;TRUE;TRUE;TRUE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}; 則 IF(COUNTIF(A$1:A2,ROW($1:$12))=0,ROW($1:$12)) 變?yōu)?IF({TRUE;TRUE;TRUE;TRUE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE},{1;2;3;4;5;6;7;8;9;10;11;12}),進一步計算返回 {1;2;3;4;FALSE;6;7;8;9;10;11;12};剩余步驟與公式在 A2 時一樣。 C、如果要生成其它范圍的隨機數(shù)(如 5 到 10 的隨機數(shù)),只需把上面的公式改一下即可,公式可以這樣寫: =SMALL(IF(COUNTIF(B$5:B5,ROW($5:$10))=0,ROW($5:$10)),INT(RAND()*(10-ROW(5:5))+1)) 把公式復制到 B6,按回 Ctrl + Shift + 回車,生成一個隨機數(shù),然后用往下拖的方法一直拖到 B11,按 Ctrl + S 保存,則生成 5 到 10 的不重復隨機數(shù);操作過程步驟,如圖9所示: 圖9 Office辦公軟件是辦公的第一選擇,這個地球人都知道。 |