說明:本文介紹的「抽籤小幫手」,最適合「由『一位負責人』在一份抽籤/抽獎名單中,一次抽出數位得獎者」的情境,例如粉專辦抽獎、尾牙抽獎。想修改中籤人數、更改抽籤動態效果的話,可以直接修改表單設計,相關教學見此。
如果你想找的抽籤工具是有一個「虛擬籤筒」連結,讓所有參與者到籤筒「自己抽籤」的模式,那不適合直接使用或修改抽籤小幫手來用。建議可以用另外一套邏輯,設計一組 Ragic 表單來達到此功能,我將參考教學附在這裡。
如果你想找的是聖誕節交換禮物的禮物配對工具則可以另外參考這篇文章。(也可以拿它當做報告分組的分組配對工具,把禮物編號當成組別即可)
你是辦抽獎活動的臉書小編、或是公司尾牙活動的籌辦人,或者團隊內部分配任務時想用抽籤決定,正在找方便好用的線上抽籤/抽獎工具嗎?
其實,在這個網路抽獎盛行的年代,市面上並不乏各種免費的抽獎工具,也有許多網路大大教大家用 Excel 設計出抽獎表單,我自己就用過一些不錯的工具,也試著用 Excel 管理過抽獎流程。但是,我用過的抽獎工具和 Excel 表單對我來說,都有一些不完全符合需求的地方。
比如說,我用的抽獎工具雖然可以自動抓粉絲團留言、在線上抽出得獎結果,但好像不能先去審核名單裡的人有沒有符合我的抽獎規則、進而編輯這份名單,我因此必須先把名單匯出成 Excel 檔,編輯名單後用 Excel 設計一個抽獎機制來抽獎。
我也用過市面上一些其他高手們用 VBA 做出來的 Excel 抽獎器,有複雜、有簡單,雖然確實可以根據自己的需求彈性設計出要的結果,但我用起來有點沒安全感,因為在我的經驗裡,簡單的類型,觸發抽獎這個動作的條件常常不是很好記(例如 F9 重新整理);複雜的類型則不是非常好上手。
另一個對我來說真正致命的問題是,Excel 不是一個行動友善的應用,人在外面要開 Excel 檔案來抽獎、想在手機操作抽獎程序,都不太容易,我希望有一個手機的 APP 介面讓我點一下就可以抽獎。
在流浪過幾個抽獎方案之後,有一天我發現我們自己家的工具—— Ragic 雲端資料庫,本身就有支援抽獎常用的隨機函數 RAND()。這代表著,其實我們是可以自己設計抽獎工具的!因此,我們就動手做了一個出來,用起來還滿滿意的,就順便開放給大家用。以下,就是這個範本的使用方法和設計/修改方法。
如果你已經有 Ragic 的帳號,可以從你的資料庫首頁左側「功能捷徑」找到 Ragic 的應用商店,在「生活應用」類別裡可以找到「抽籤小幫手」。
如果還沒有 Ragic 帳號,可以從 Ragic 首頁往下滑,點到「範本」區塊,一樣從「生活應用」標籤找到「抽籤小幫手」。
點一下就可以直接安裝了。
如果你找不到的話,直接點這裡也可以。如果沒有註冊過 Ragic 帳號,系統會引導您註冊一個免費帳號、建立資料庫並將模組安裝在此資料庫中,這部分是完全免費的,未經您的同意,我們不會向您收取費用,請放心。
「抽籤小幫手」模組包含兩張表單:「抽籤小幫手」和輔助用的表單——「抽籤名單」。這兩張表單有連結關係。最主要用來抽籤的是「抽籤小幫手」,如果你的名單不多、是要直接輸入的,或是從外部整理成 Excel 或 CSV 檔案要匯入的,那麼可以只要使用「抽籤小幫手」這張表單就好。
而如果你的抽獎名單是透過請參與者在網路上填表單登記建立的,你希望有一個現成的 Ragic 表單可以讓參與者填寫的話,就可以另外使用這張輔助表單「抽籤名單」。以下一一說明步驟:
首先要到「抽籤小幫手」表單,點「建立一筆資料」,你會看到以下畫面:
系統會幫你產生一個「活動編號」不用自己填,你只要填寫抽獎日期、活動名稱,若有需要的話填寫活動說明就可以先儲存資料了。如果你一次辦了好幾場對象不同的抽籤活動,也可以一次建立好幾筆抽籤活動資料。
(如果你是在辦尾牙抽獎活動,希望依序要出抽頭獎、二獎、三獎...,或是董事長獎、總經理獎、200 元禮卷獎,那麼,請不要把「抽頭獎」當一次活動,「抽二獎」當另一次活動建另一筆資料來抽哦!因為這樣抽到頭獎的人就還有機會抽到二獎,通常大家不希望這樣。正確的做法是建立一筆資料就好,有需要時參考後面提到的——新增中獎者、依序抽出得獎者教學,來修改設計。)
接著,你需要把要抽籤的人建檔起來。這有三種方法:第一種是直接繼續在「抽籤小幫手」表單剛才那筆資料裡新增、存檔,第二種則是先儲存好活動資訊後,把你在其他地方整理的資料匯入「抽籤小幫手」的「參與者資訊」區塊。第三種則是直接請參與者在輔助表單「抽籤名單」填寫資料。
假如人不多、你是要直接輸入的話,例如公司部門五六個人抽籤,那麼你可以直接在「抽籤名單」這張表單的「子表格」區塊:「參與者資訊」的地方,一筆一筆建立資料把每個人加進來。如果不知道子表格是什麼,可以參閱這篇文件。
新增名單時,每筆子表格資料旁邊對應的「抽籤變數(籤)」會直接被觸發產生一個變數,進而產生出一個抽籤結果,這個結果會一直波動到最後一筆資料輸入為止(每輸入一次新的資料,都會有新的變數產生)。你可以選擇就以最後一筆資料輸入時的結果為準,或者,你可以參照後面的第三步驟正式的按按鈕執行抽籤,比較有「抽籤」的感覺。
如果抽籤/抽獎名單很長,且原本就整理成 Excel 或 CSV 檔案的話,你也可以直接將檔案匯入到系統裡。目前,Ragic 已經支援「直接將 Excel 檔案匯入到子表格」的功能,因此你只要在選擇匯入對應欄位時,記得選擇是要匯入到子表格「參與者名單」即可,詳細的教學可以參考這裡。
以我們要做的事來說,檔案的格式類似下圖這樣就可以了:
如果不確定格式該怎麼整理的話,可以先在輔助表單——抽籤名單表單建立一筆資料,在列表頁將該筆資料匯出成 Excel,把匯出檔的格式當藍本,再加上一個「活動編號」欄位即可。
「活動編號」欄位是讓系統辨認名單屬於哪次活動用的,假如你要匯入的名單是屬於編號「4」的活動,那 Excel 檔裡每一個參與者的「活動編號」欄位就都填「4」。匯入時,你可以忽略某些不需要的欄位,但一定要匯入「參加者姓名」和「活動編號」。
你可以直接提供你安裝的「抽籤名單」表單網址給人填寫資料,提供網址的方法可見這個教學。我們在這張表單給予未登入的使用者「問卷式使用者」的權限,因此任何人都可以填寫資料,但看不到別人填的資料;你則可以看到所有參與者資料。
你也可以利用 Ragic內嵌元件的功能將這張表單放在你的網站上讓人直接從網站上填寫。
前面的步驟(前置作業-新增活動/新增名單)都完成後,就可以在主表單「抽籤小幫手」抽籤了!前面有提到,由於這個抽籤機制是透過「表單之間建立的連動關係 + Ragic 的隨機函數公式」來做的(設計邏輯的說明請參見這裡),一輸入 / 匯入完資料,就會產出一個抽籤結果了,可以看到「中獎名單」已經出爐:
不過,如果你比較偏好透過「抽籤的動作」,讓大家可以一起見證抽籤過程的話,也可以透過已經設計好的按鈕來執行。你可以點一下表單右下角的閃電圖示(下圖 1. 旁的紅圈),會看到其實有兩個按鈕在那裡:
有需要的話,先點一下「清空中籤資料(準備重新抽籤)」按鈕,就可以把現有的中籤資料清除,準備正式抽籤;正式抽籤時,只要點一下「開始抽籤」,中獎人就會出現在右邊紫紅色的區塊了。
這裡,範本模組預設的中籤人是兩個人。如果你希望修改中獎人的人數,或希望微調其他部分(例如為了公開抽獎時能保護參與者隱私,把參與者的部分姓名或聯絡方式打馬賽克),可以參考下一個段落「修改範本」或「參考範本自行設計」的解說。
如果你註冊了 Ragic 帳號、安裝了「抽籤小幫手」範本,那麼你可以用 Ragic 的 app 來玩玩看行動抽獎。方法很簡單:首先在你的智慧型手機安裝 Ragic app (iOS 或 Android)。
然後,確認你有建立了抽獎資料、抽獎名單後,打開 app、用你的 Ragic 帳號登入,進入要抽籤的活動資料。你可以先點畫面下方的 "Actions" 或右上方的閃電圖示,點一下「清空中籤資料」再來開始抽籤,一樣只要點下方的 "Actions" 或右上方的閃電圖示,點一下「開始抽籤」即可。示意畫面如下:
「抽籤小幫手」屬於 Ragic 的免費範本模組,任何用戶都可以免費使用,你也可以直接修改範本的設計讓它更符合需求,或是仿造它的邏輯自行設計出你想要的應用。
而不論你是要自行設計抽籤小幫手、或是修改表單,都需要了解背後的設計原理,因此以下就先簡單說明這個範本的設計方式。
(註:如果你已經是 Ragic 用戶,你資料庫中已經有自行設計或修改過的 Ragic 表單的話,請注意:在 Ragic,如果你修改或自行建立的表單總數超過 3 張,就需要升級為付費的版本,付費版本的差異可以參考這篇文章。)
在 Ragic ,「建立一張表單」的基本方法可以參考這篇教學文章。我們首先依照一般表單的建立原則,建立「抽籤小幫手」這張表單,包含活動編號、活動名稱、活動說明、抽獎日期、中獎人等欄位。建立欄位時可以直接設定對應的欄位型別,例如活動編號為自動產生欄位、活動名稱與說明是自由輸入欄位、抽獎日期為日期欄位;欄位位置和版面都可以依照你的需求去調整(調整版面的相關教學見此)。
而「參與者資訊」區塊的欄位,包括參加者編號、姓名、聯絡資訊、抽獎變數,都是 Ragic 的子表格欄位。
如同前面所說,「抽籤小幫手」是利用 Ragic 的隨機函數公式來設定的,這跟一般利用 Excel 公式來設計抽籤表格的邏輯其實很類似。最主要要套用公式的部分,是「抽獎變數(籤)」和中獎名單區塊的幾個欄位,分別說明如下。(註: Ragic 的公式和 Excel 很接近,但還是有些差別,如果你沒有使用過 Ragic 的公式,請先參考此份文件的說明)
「抽獎變數(籤)」使用的公式為 RAND(),此公式不需要參照任何欄位值,功能為「傳回介於 0 到 1 之間的隨機數值」。由於「抽獎變數(籤)」欄位標頭的「公式」欄位輸入了此公式,只要有人新增了一行子表格資料(新增一位抽籤者),或重新觸發公式,系統都會像抽籤一樣,重新分配一組(介於 0 到 1 之間且不重複的)亂數給全部抽籤者,此時只要指定一個規則,例如分配到的隨機數值最大的人中籤,或最小的人中籤,就可以決定中籤者了。
這裡,我們設定的規則為「分配到隨機數值第一大的人是第一位中籤者、隨機數值第二大的人是第二位中籤者」,因此我們要在「第一位中獎者編號」、「第一位中獎者姓名」等欄位套用公式來取得對應的值。
「第一位中獎者編號」欄位套用的公式為 LARGE 公式,這個公式可以指定把子表格裡某個欄位最大值的那筆資料取出、取得該筆資料的某個指定欄位值,用我們的例子來說就是可以找出獲得最大「抽獎變數(籤)」的那個人,然後把他的「參加者編號」顯示在這個欄位。
以這個例子來說,公式寫法為 LARGE(D6,1,A6) (D6為「抽獎變數(籤)」欄位,1為序號[第一大的意思],A6為要傳回的值:「參加者編號」)。
同理,「第二位中獎者編號」欄位也套用 LARGE 公式,寫法為 LARGE(D6,2,A6),2就是「第二大」的意思。
「第一位中獎者姓名」有兩種寫法,一種是一樣使用 LARGE 公式: LARGE(D6,1,B6) (D6為「抽獎變數(籤)」欄位,1為序號[第一大的意思],B6為要返回的值:「參加者姓名」。另外一種則是使用 VLOOKUP 公式,要求找到子表格中「參加者編號 = 中籤者編號」的那筆資料,然後回傳那筆資料的「中籤者姓名」,寫法為 VLOOKUP(F2,A6,B6)。(F2 = 第一位中獎者編號,A6 = 參加者編號,B6 = 參加者姓名)。
同理,「第二位中獎者姓名」欄位也可以套用 LARGE 公式: LARGE(D6,2,B6),或者 VLOOKUP 公式:VLOOKUP(F3,A6,B6)。
前面提到,除了透過新增參加者資料時觸發公式的結果來當抽籤結果之外,我們也另外設計了重新觸發公式的按鈕,讓「抽籤」這個動作可以比較動態、有明確的指令一點。這裡包括兩個按鈕:
首先,重新抽籤之前,要先把之前的中獎人資料清掉,不然會看不太清楚,因此要先設計一個「清空中籤資料(準備重新抽籤)」的動作按鈕,這個按鈕是透過 Ragic 更新這張表單欄位值的功能設計的,只要把中獎資訊欄位值都設定為空值,點一下這個按鈕就可以清空資料了:
而「抽籤」的按鈕,其實需要做的,就是針對抽籤的這筆資料執行公式重算。為了達到「按按鈕時該筆資料執行公式重算 = 抽籤」的效果,我們設計了一個有點繞彎的變通方式,如下:
(一)設計一個欄位(我命名為「功能」)並把這個欄位隱藏起來
(二)然後設計一個「更新這張表單欄位值」動作按鈕,設定此按鈕用來更新「功能」欄位的值(更新為什麼值都可以,該欄位不影響整體運作),進階設定勾選『執行此動作時,重算這張表單上的所有公式』,來變通達到「公式重算」的實質效果的。
前面整個抽籤功能都圍繞著「抽籤小幫手」這張表單,其實如同前面所說,直接使用這張表單就夠用了。
不過,如果你希望提供大家一個自己填寫名單(參加抽獎)的功能,還是需要有另一張表單比較便利,而這就是「抽籤名單」表單,建立的方式為從子表格產生新表單,連結欄位應該選擇「活動編號」。
由於手機螢幕比電腦窄,電腦欄位可以併排,手機欄位不行,因此預設情況下,如果有設計並排的欄位,Ragic 的 App 表單欄位會自動由左至右、再由上至下的顯示,這個自動抓取的順序可以在設計模式中修改,方法可參考這裡。範本表單就略微調整了 APP 的欄位順序。
以上,解說完「抽籤小幫手」主要的設計邏輯。了解邏輯後,如果你想要微調一些設計,以下是快速教學。
修改 Ragic 範本的基本教學可以參考這裡。
如果你希望新增更多中籤者,可以繼續新增和前面類似的欄位,並套用與前面中獎名單類似的公式,例如「第三位中獎者編號」套用公式 LARGE(D6,3,A6),「第三位中獎者姓名」套用 LARGE(D6,3,B6);「第四位中獎者編號」套用公式 LARGE(D6,4,A6),「第四位中獎者姓名」套用 LARGE(D6,4,B6) 等等。(註:由於要以這種方式新增中獎者,獎項較多,例如中獎者一次有數十到數百個的模式,就比較不建議使用)
如果你希望抽籤小幫手這張表單的「參加者姓名」名字可以被打馬賽克,將這個欄位的欄位種類改成 遮罩欄位就可以了。系統管理員只要點旁邊的眼睛圖示,仍然可以看到資訊。
你可以在你的抽籤名單上加一個「打勾選項」欄位,在不符資格的人前面打勾,之後再篩選出打勾的資料,刪除篩選資料即可。或者,你可以直接用資料前面的「勾勾」或「星號」標註工具(不需要進入設計模式)。
如果你要用新增不同資料的方式,連續針對同一群對象抽獎,且希望每次抽獎時都排除上次得獎者的話,你也可以用複製出新資料後,手動勾選刪掉上個得獎者的方法來做。不過我們比較推薦把針對同一群對象的抽獎放在同一筆資料裡,方法請見下一點。
首先要說明的是,由於這個工具主要的抽籤功能是用 RAND() 公式設計的,一次「抽籤」(公式重算)的動作,其實並不像是在籤筒裡依序抽出一支籤、兩支籤,而比較像是搖一次籤筒,讓所有的籤正好分配在屬於某個參加者的位置上(然後再依照參加者分配到的籤數字大小,得出第一大的是一獎得主,第二大的是二獎得主)。
因此,這個用 RAND() 做出來的機制,沒辦法真的在一張表單上抽三次籤,第一次抽出一獎、第二次抽出二獎、第三次抽出三獎,只能在視覺效果上,先把抽籤的結果隱藏起來,然後利用其他公式/機制,讓我們在點「一獎」的時候秀出一獎的結果,點「二獎」的時候再秀出二獎的結果。
我們可以用這個方法來做:新增一獎、二獎、三獎、四獎...的勾選欄位,利用 UPDATEIF 公式,設計出「當『一獎』欄位打勾時,才顯示出第一位得獎者名字」的機制。這樣,先把籤分配好之後,勾「一獎」時會跳出一獎得獎者,勾「二獎」時會跳出二獎得獎者,在視覺效果上看起來會像是一個一個抽出來的,且中獎者不會重複。
(註:如果用「在抽籤小幫手上新增五次資料,抽五次籤的方法」抽一獎、二獎、三獎、四獎、五獎的話,每筆資料都是獨立互不影響的,除非手動把前面的中獎者挑掉,不然無法避免同一個人多次中獎)
我們用這個原理,設計了「抽籤小幫手變化版(1)一次抽一個獎」這張公開的示範表單。
這張表單預設抽五個獎,表單設計如下圖。
實際使用時,一樣只要先在「參加者資訊」區塊新增名單,接著點「清空中籤資料」按鈕,再點「開始抽籤」按鈕。接著,結果不會直接秀出來(會出現在隱藏欄位裡),要抽一獎的時候,在「一獎」欄位點一下打勾,一獎結果就會出現;要抽二獎的時候,在「二獎」欄位點一下打勾,二獎結果就會出現,以此類推。
可以玩玩看!這個表單上的 QR Code, 則是讓你可以直接在 APP 上試著抽抽看:
不過不要把隱私資料放上去哦!因為其他人也會看到。
有用戶詢問:『想用抽籤小幫手「製作抽籤,傳送這個抽籤給別人抽,然後收集這些抽籤結果」,請問有可能實現嗎?』
由於抽籤小幫手(範本)的邏輯是需要「先決定好名單」,接著由「電腦一次幫所有人分配隨機數字」這個動作來一次執行抽籤的,沒辦法在還沒有名單的前提下執行抽籤、且抽籤的動作由負責人一次執行,無法讓每個參與者自己去模擬「從籤筒抽籤」的動作, 因此這個用戶詢問的需求不太適合直接使用或修改抽籤小幫手範本。
不過,這個需求其實是可以透過 Ragic 的其他功能,直接另外設計一組三張表單來滿足的。這組表單包括:一組「籤筒」(給人抽籤的籤筒、以及內部管理用的籤筒版本)、以及一張使用者「抽籤表單」。以下就簡述這個「籤筒版本」的抽籤工具設計方法。
可以先設計一張「籤筒」表單,一筆資料 = 一個籤,欄位要包含套用 RAND() 公式的隨機變數欄位 、給人抽籤用的編號或不可重複的代號「籤筒編號」、以及顯示該籤號是否已經被抽的抽籤狀態(已抽?)欄位。
做好這樣的籤筒,接下來只要另外建立一張給人填寫的「抽籤表」,設計「抽籤表」與「籤筒」之間的連結與載入關係:連結「籤號」、載入該籤號資料的隨機變數欄位值,那這個動作就像在模擬實體世界「抽籤」的效果。
不過,如果要真的有效模擬抽籤效果,要能做到兩件事:(1) 讓人在填寫抽籤表、點選「籤號」時看不到「籤號」對應的隨機變數是大是小(否則就可以作弊了),(2) 已經被抽過的籤,就要從籤筒裡消失,不能讓人抽第二次。
直接用產生隨機變數的那張「內部管理用籤筒」不太容易直接達成上面的兩個需求,因為:
(1) 只要抽籤的人需要從籤筒取籤,就需要開放籤筒的表單權限給抽籤者,這樣他有可能有機會看到隨機變數;但如果完全把隨機變數欄位隱藏起來,內部管理又有點不方便。
(2) Ragic 的連結與載入功能並不直接支援「某個連結欄位值只能選取一次」的功能,需要搭配其他的設計(例如多版本工作表搭配固定篩選)才能做到。
綜合以上兩點,我們可以不要把內部管理用的籤筒當抽籤來源,而是另外做一個多版本表單 - 抽籤用的籤筒版本來當抽籤來源。之後只要把權限設定好,只讓抽籤者看到抽籤用的籤筒、內部管理用的籤筒不給抽籤者權限,就可以達到需求了。
在原本建立的「內部管理用籤筒」,利用「多版本工作表」功能複製一張共享資料來源的表單,並將它命名為「抽籤用籤筒」,將「隨機變數」欄位的公式拿掉並隱藏欄位(避免從不同來源產生隨機變數)、將抽籤者不應該動到的「已抽」狀態欄位設為唯讀。
為了確保「有人把某個籤號抽走後,其他人就選不到這個籤號」,這邊可以設計一個固定篩選,讓抽籤用籤筒只顯示「已抽?」狀態未打勾的欄位。
這樣之後,只要再設計一個機制讓有人抽了某個籤之後,自動將籤筒的「已抽?」狀態未打勾的欄位,更新成打勾狀態,那筆資料(那個籤)就會因應固定篩選的機制,從抽籤用籤筒中消失(只顯示在內部管理用籤筒裡),不會再被抽到了。
如同前面的設想,設計抽籤者、籤號、籤號代表的數字等欄位,連結「抽籤用籤筒」表單,連結欄位為抽籤號碼、載入欄位為隨機數字,載入欄位設計成唯讀欄位以防被亂改。(這裡加入圖片欄位,單純只是增加抽籤樂趣,可加可不加)
接著就要在這張表單上設計「有人抽了某個籤之後,自動將籤筒該籤對應的已抽狀態更新成打勾」的機制,我們可以利用更新別張表單欄位值來達成這個需求:
先建立一個「更新用欄位」預設值設為打勾,然後設定按鈕更新「抽籤用籤筒」表單,設定當兩張表單的抽籤編號相等時,將抽籤表單上的「更新用欄位」欄位值更新到「抽籤用籤筒」表單的「已抽?」欄位,並且在進階設定勾選「儲存時自動執行」、把按鈕隱藏起來。
假設抽籤的人可能是沒有 Ragic 帳號的人,你會需要針對 "EVERYONE" 群組設定權限。可以這樣設定:
表單 | EVERYONE 權限 |
籤筒(內部管理用) | 無權限 |
籤筒(抽籤用) | 僅閱覽 |
抽籤表單 | 問卷式使用者 |
大致完成設計之後,可以利用 Ragic 分享這張表單的功能,把抽籤表單的網址連結或 QR Code 分享出去(建議選擇「填寫表單用網址」讓填寫介面更方便)
這樣設計出來的抽籤表單可以這樣運作:
大家抽完之後,只要在抽籤表單列表頁上排序隨機數字(看你偏好是數字最大的中籤、或最小的中籤)即可。
你也可以自己依照教學試試看設計,有問題的話請洽 support@ragic.com 。