職場上,抽獎或隨機點名等情況經常會遇到,作為組織方或負責人,你該怎麼做呢?
一般來說可以用EXCEL,也可以用word/ppt結合,或者用第三方抽獎軟體、寫代碼、用小程序。
今天雷哥給大家分享幾種簡單的方法,不用編程,簡單易懂。雷哥相信你學會了以下方法,職場上如魚得水,而且某些功能不僅僅適用於抽獎或點名,還適用於批量高效辦公奧~
情景:從n名員工中抽出若干名幸運員工,此處假設n=80,即80名員工中抽選若干名幸運者,可以是1人,也可以是多人。
第一種:運用EXCEL公式製作
法1: 用INDIRECT和RANDBETWEEN函數(單個抽獎)
Step1)在合適單元格位置處,輸入公式=INDIRECT("A"&RANDBETWEEN(2,81))
Step2) 需要抽獎時,按住F9鍵不放,此時隨機數及中獎人會不斷變化,倒數幾秒,放開F9鍵時則隨機生成一個中獎人。有些筆記本電腦,是按FN+F9鍵。反覆操作可以依次抽出單個隨機名。
函數解析
=INDIRECT(ref_text,[a1]),是返回由文本字符串指定的引用;Ref_text 為對單元格的引用,a1 為一邏輯值,指明包含在單元格ref_text 中的引用的類型,該參數可忽略,此處不展開贅述了。=RANDBETWEEN(bottom,top),返回一個介於指定的數字bottom,top之間的隨機數,表示隨機抽取產生約定的2個數之間(包括這2個數)的任意數。
所以,上述抽獎程序中的公式:
=INDIRECT("A"&RANDBETWEEN(2,81))中,
RANDBETWEEN(2,81)),是產生2到81之間的隨機數字(包括2和81)。所以=INDIRECT("A"&RANDBETWEEN(2,81)),連接符「&」將字符「A」與後面的隨機數連起來,表示引用【AX單元格】,其中X是2~81(包括2和81)的一個隨機數,這裡AX單元格裡的內容也就是各個待抽獎的名字。
法2: 用INDEX、RANDBETWEEN、RAND、RANK等函數
Step1)B2~B81單元格內均輸入公式=RAND()
思考:如何快速輸入呢(提示:ctrl+enter批量輸入,或者先輸入B2單元格後下拉填充)
Step2)設計好中獎人員名單顯示區域格式,如只需抽取一位幸運者,可以在一個單元格輸入公式,例如在E3單元格錄入公式:
=INDEX($A$2:$A$81,RANK(B2,$B$2:$B$81)),如需抽獎4人,則下拉該公式至4行公式即可。
詳見動圖如下:
說明:如果僅僅需要抽出一名幸運者,或者需要依次抽出一名幸運者(每次抽一個人),則還可以在某個單元格處,例如E9單元格輸入公式=index(A2:A81,randbetween(1,80))
詳見動圖如下:
函數解析
=index(array,row_num,column_num),返回表或區域中的值或對值的引用,即引用出區域內行列交叉處的內容;Array表示單元格區域或數組常數;row_num表示要引用的行數;column_num表示要引用的列數;(注意如果省略row_num,則必須有column_num;如果省略column_num,則必須有row_num)比如:=index(A2:A81,6),意思就是返回A2:A81區域中第6行的姓名,此處為Edward6。
=RAND(),返回0~1之間的小數,包含0,但不包含1;= rank(number,ref,[order]),排名函數,常用求某一個數值在某一區域內的排名;number為需要求排名的那個數值或者單元格名稱(單元格內必須為數字);ref 參數為排名的參照數值區域;order參數為0和1,默認不用輸入,得到的就是從大到小的排名,若是想求倒數第幾,order的值請使用1。
所以,上述抽獎程序中的公式:
=INDEX(A$2:A$81,RANK(B2,B$2:B$81))中,RANK(B2,B$2:B$81),是對B2:B81單元格產生的隨機數字排序,生成了隨機的1-80的數字。RANK函數產生的排序結果將用於INDEX函數的參數。INDEX函數返回表格(B2:B81)中的元素值,此元素由行號的索引值(也就是RANK函數的運算結果)給定。因為B列的數字是完全隨機的,所以任何數字出現在前4行的概率都相同。
=INDEX(A2:A81,RANDBETWEEN(1,80))中,就是先用RANDBETWEEN函數產生1 ~80之間的隨機數,再用index函數引用出A2:A81區域中,由RANDBETWEEN函數產生的隨機數所在的單元格對應的姓名。
拓展應用:視覺優化
為了突出顯示抽選人員名單中的幸運者位置,還可以設置條件格式:
選中A列名字區域→點擊菜單欄目的【條件格式】—【突出顯示單元格規則】—【等於...】,設置規則,如動圖所示:
Step3) 控制鍵盤F9抽獎:同前面操作方法。為了保持視覺神秘感,可以將B列隱藏即可。(選中該列→右擊「隱藏」)。
效果見動圖。
法3:使用VLOOKUP和RANDBETWEEN函數
原理跟以上方法類似,只不過此時總名單給予相應的序號,中獎人對應的序號是隨機的,最終輸出選定區域的第二列,即姓名列,這裡就不做詳細說明了,如下圖所示。輸入公式後,同樣最後按【F9】鍵不放,就可實現抽獎功能了。
函數解析
=VLOOKUP(lookup_value,table_array,col_index_num,range_lookup),該函數是縱向查找函數,功能是按列查找,最終返回該列所需查詢序列所對應的值;Lookup_value為需要在數據表第一列中進行查找的數值,Table_array為需要在其中查找數據的數據表,col_index_num為table_array 中查找數據的數據列序號,col_index_num 為 1 時,返回 table_array 第一列的數值,col_index_num 為 2 時,返回 table_array 第二列的數值,以此類推;Range_lookup為一邏輯值,指明函數 VLOOKUP 查找時是精確匹配,還是近似匹配。如果為FALSE或0,則返回精確匹配,如果找不到,則返回錯誤值 #N/A。如果 range_lookup 為TRUE或1,函數 VLOOKUP 將查找近似匹配值,也就是說,如果找不到精確匹配值,則返回小於 lookup_value 的最大數值。如果range_lookup 省略,則默認為1。
第二種:結合word及PPT製作
為了演示方便,我們用序號1~80代表姓名,首先是將每個參與人員輸入到每張PPT中,如果一個個輸入,很麻煩,這裡介紹一種簡單方法:
Step1:複製80位參與者的姓名,從excel中複製1~80到word中,選擇「僅粘貼文字」形式;
Step2:將80位名字設置大綱級別為一級,這裡可以直接設置為「標題1」,詳見動圖;
Step3:選擇word 【文件】菜單-【選項】,選擇【自定義功能區】,選擇【不在功能區中的命令】,然後在下面內容中選擇【發送到MICROSOFT POWERPOINT】,先從右側選擇【新建組】,然後點擊【添加】按鈕,添加完成,可以重命名,方便記憶,詳見動圖;
Step4:確認後,word中菜單欄就多了一個「新建選項卡」,點擊「發送到MICROSOFT POWERPOINT」,所有80個名字將在PPT裡出現,且每頁都是一個姓名。
然後就可以在PPT裡設置抽獎效果啦:
Step5:美化PPT格式。刪除PPT裡預設的文本框,在PPT的【視圖】-【幻燈片母版】批量設置格式
Step6:設置PPT的「切換」效果(持續時間設置為0,去掉「單擊」框選,「設置自動換片時間」為0,全部應用);
為了美觀,需要設置「放映方式」為「循環放映」;按F5進行自動播放,如需抽獎,則按任意數字鍵盤,例如按1鍵暫停讀取中獎人姓名,然後再按住空格鍵(SPACE)則將繼續抽獎;詳見動圖;
當然抽獎背景可以在母版裡進一步美化,例如詳見動圖;當然還可以加入音樂。
總結:雷哥介紹了以上幾種方法,其中用到了RAND及RANDBETWEEN函數生成隨機數、RANK函數排名次、INDEX,INDIRECT函數引用相應單元格內容、VLookup查詢函數、F9鍵強制執行重算,還利用了word及PPT結合,最終用PPT呈現的方式來抽獎,此處之所以用word,是為了方便將內容快速批量轉到PPT裡。以上方法靈活簡單,全是乾貨奧,可根據實際情況自由選擇。建議收藏起來,職場肯定會用上的!