2012年8月19日 星期日

[Excel應用]今天吃什麼?---隨機取亂數的應用

今天要吃什麼?不知道,好多選擇~~沒關係,除了 Flash,亂數在電腦中可是十分常用的東西,今天就玩玩 excel 的隨機亂數,從菜單挑出三菜一湯吧!

語法介紹

首先,我們在這個範例中,會使用到兩個函數:「INDEX」與「RAND」。
INDEX
語法:INDEX(來源範圍, 第幾列, 第幾欄, 第幾個區域)
  • 「INDEX」會回傳在來源範圍中,第幾列第幾欄所指定的值。例如「INDEX(A1:E5, 3, 2)」則會傳回「C2」的值;而「第幾個區域」參數則是可以省略的,預設會傳回第一區。
  • 「第幾個區域」通常是來源範圍為「不連續」時所使用。例如「INDEX((A1:A5,B3:B6,D5:D9), 3, 1,2)」則會傳回「B3」的值;而「第幾個區域」參數則是可以省略的,預設會傳回第一區。
    請注意:即使來源為不連續選取區,還是會從第一列第一欄開始算起,所以如果「INDEX((A1:A5,B3:B6,D5:D9), 1, 1,2)」,便會傳回錯誤,因為「B3 到 B6」之間,找不到「B1」的值。
RAND
語法:RAND()* 隨機數量 +1
  • 由於在電腦程式碼的世界裡,「隨機」代表由 0 到 1 之間的小數,因此我們必須乘上隨機數量。
  • 例如要從 1~30 隨機取樣,則是「RAND()* 30+1」;而「+1」則代表「從 1 開始」,如果沒有加 1,則會取「0~29」這 30 個數。

範例練習

我們在「F9」儲存格輸入「=INDEX($A$2:$C$21,20*RAND()+1,3*RAND()+1)」,即可隨機取得其中一種配菜的產品。其中:
  1. $A$2:$C$21:從 A2 到 C21 的絕對位址。
  2. 20*RAND()+1:從 1 到 20 隨機取一列。
  3. 3*RAND()+1:從 1 到 3 隨機取一欄。
    隨機取亂數

沒有留言:

張貼留言