你可以結合 CHAR 函數(從數字代碼回傳字元)與 RANDBETWEEN(在兩個範圍間產生隨機整數),在 Excel 中產生隨機字母與數字;或者使用較新的 RANDARRAY 函數,一次產生整個溢出範圍的結果。針對字母,經典公式為 =CHAR(RANDBETWEEN(65,90)) 用於大寫 A–Z,以及 =CHAR(RANDBETWEEN(97,122)) 用於小寫 a–z;針對數字,=RANDBETWEEN(0,9) 則會回傳單一隨機數字。將這些公式用 TEXTJOIN 包起來並搭配空分隔符號,就能產生任意長度的字串,方便貼到儲存格、標籤或測試資料集中。

試算表其實是個意外常需要快速隨機輸出的地方。測試工程師需要範例 ID 來對匯入流程進行壓力測試。老師會建立隨機化的拼字清單或測驗題目順序。遊戲設計師為字謎遊戲製作字母池的原型。行銷人員則用來模擬折價碼。在每個情境中,目標都相同:無需手動輸入、也不必離開 Excel,就能產生逼真的隨機字串。好消息是 Excel 內建了能同時處理字母與數字的函數,而且公式只要用過一次就夠短到能記住。當你只需要一次性批次結果時,像 Random Letter Generator 這類專用瀏覽器工具,完全不需要公式就能達到相同效果。

how to generate random letters and numbers in excel
how to generate random letters and numbers in excel

在 Excel 中產生隨機字母與數字所需的函數

在開始建立任何公式之前,先認識三個幾乎能完成所有工作的 Excel 函數會很有幫助。

函數用途範例輸出
CHAR(code)回傳指定 ASCII 代碼的字元=CHAR(65) → "A"
RANDBETWEEN(low, high)兩個值之間(含端點)的隨機整數=RANDBETWEEN(1,6) → 4
RAND()從 0 到 1 之間的隨機小數=RAND() → 0.3728
RANDARRAY(rows, cols)溢出一整個隨機數字網格=RANDARRAY(5,3) → 5x3 網格
TEXTJOIN(delim, ignore, text1, ...)用分隔符號串接多段文字=TEXTJOIN("",TRUE,A1:A10) → 單一字串

大寫 A–Z 的 ASCII 代碼範圍是 65 到 90,小寫 a–z 則是 97 到 122,這也是為什麼 CHAR 結合 RANDBETWEEN 會成為產生隨機字母的標準做法。如需更深入了解 ASCII 表本身,維基百科上的 ASCII 條目是個簡潔清楚的參考資料。

在 Excel 中產生單一隨機字母

最簡單的情況,就是在一個儲存格中放一個隨機字母。

  1. 點選任何一個空白儲存格,例如 A1。
  2. 輸入 =CHAR(RANDBETWEEN(65,90)) 以產生大寫字母,或將 65,90 改為 97,122 以產生小寫字母。
  3. 按下 Enter。該儲存格現在會顯示一個隨機字母,例如 K 或 m。
  4. 按下 F9 重新計算,即可挑選一個新的字母;每次重新計算都會重新擲出新的值。

如果你只需要母音或只需要子音,只要更換數字範圍即可。大寫母音分散在 65, 69, 73, 79, 85,小寫母音則分散在 97, 101, 105, 111, 117,因此你可以使用 INDEX 搭配一個小陣列,只從這五個代碼中挑選。不過大多數使用者會傾向在產生結果後再進行篩選,或是直接使用提供母音/子音切換功能的工具,而 Random Letter Generator 正是能讓你一鍵完成這件事的工具。

建立一串隨機字母與數字

若要在單一儲存格中填入一串例如長度為 8 的字串,請結合 CHAR、RANDBETWEEN 與 TEXTJOIN。以一個具體範例來看其算術邏輯:使用公式 =TEXTJOIN("",TRUE,CHAR(RANDBETWEEN(65,90)),CHAR(RANDBETWEEN(65,90)),CHAR(RANDBETWEEN(65,90)),CHAR(RANDBETWEEN(65,90)),CHAR(RANDBETWEEN(0,9)+48),CHAR(RANDBETWEEN(0,9)+48),CHAR(RANDBETWEEN(0,9)+48),CHAR(RANDBETWEEN(0,9)+48)),內部的每個 CHAR 呼叫會各別回傳一個字元,TEXTJOIN 則用無分隔符號的方式將它們黏合在一起;而 +48 的偏移量會將數字 0–9 轉換成對應的 ASCII 代碼,這是因為數字 "0" 的 ASCII 是 48,"9" 的 ASCII 則是 57。

將這個公式沿著一整欄往下拖,就能產生任意多組代碼。每次重新計算(包括活頁簿中其他地方的編輯)都會重新擲出新的字串,因此在你滿意結果後,請使用「選擇性貼上 → 值」來鎖定結果。

使用 RANDARRAY 進行批次輸出

在 Microsoft 365 中,RANDARRAY 讓批次產生變得幾乎不費功夫。若要從 A1 開始在 A 欄填入十列隨機大寫字母,請在 A1 輸入 =CHAR(RANDBETWEEN(65,90)),然後向下拖曳到 A10,或是使用動態陣列形式 =CHAR(SEQUENCE(10,1,65,0)) 搭配 RANDBETWEEN 來產生溢出網格。若要在 B1:B10 產生隨機 4 位數字,請使用 =RANDBETWEEN(1000,9999)。RANDARRAY 能在不需向下拖曳的情況下回傳相同類型的值,當你需要數百列資料時特別有用。

只產生隨機數字

在 Excel 中產生隨機數字完全不需要 CHAR。請挑選符合你範圍的函數即可。

  • =RANDBETWEEN(1,100) 會產生從 1 到 100(含端點)的整數。
  • =RAND()*100 會產生從 0 起到 100(不含 100)為止的小數。
  • =INT(RAND()*50)+1 只使用舊版的 RAND 函數,就能產生從 1 到 50 的整數。
  • =RANDARRAY(20,1,1000,9999,TRUE) 在 Microsoft 365 中能一步到位地溢出 20 個介於 1000 到 9999 之間的隨機整數。

若想全面了解數字方面的應用,在 MATLAB 中產生隨機數字 的指南展示了相同原理如何應用於其他環境;而 Random Number Generator 則是當你完全不需要公式時,一個快速的瀏覽器替代方案。

何時瀏覽器工具比公式更快速

公式在活的活頁簿中非常好用,但在許多常見情境下,開啟瀏覽器工具反而是更佳的選擇。如果你需要在你開啟 Excel 之前就先準備好一串字串、想要透過視覺化介面控制大小寫、母音或子音集字規則與重複規則,或是需要把結果分享給不懂 Excel 的人,使用產生器會更快。Random Letter Generator 正好涵蓋了這樣的工作流程:選擇從 1 到 100 的數量,挑選大寫、小寫或混合大小寫,選擇性地限制為僅母音或僅子音,並切換是否允許重複,然後按下 Generate(產生)。一個 Copy(複製)按鈕會將結果放到你的剪貼簿,方便直接貼到儲存格、信件或代碼欄位中。

相同的捷徑邏輯也出現在相關工具中。擲硬幣 處理二元決策、擲骰子 涵蓋 d4 到 d20、使用者名稱產生器 能產生具有品牌感的帳號,而 隨機分組產生器 則能把任何名單拆成均衡的小組。每一項工具都消除了工作流程中一點微小但煩人的摩擦,讓你能專注在真正重要的事情上。

使用線上工具產生隨機字母

  1. 在瀏覽器中開啟 Random Letter Generator
  2. 在數量欄位中輸入你想要的字母數,範圍從 1 到 100。
  3. 選擇大小寫:大寫、小寫或混合。
  4. 可選擇性地挑選僅母音或僅子音的篩選條件,並決定是否允許重複字母。
  5. 按下 Generate 並檢視輸出結果。
  6. 點選 Copy,然後切換到 Excel 並按下 Ctrl + V,即可將字串貼到作用中的存存格。

避免 Excel 反覆重擲你的隨機值

本文中的每個公式都是揮發性的,這代表任何變更都會觸發重新計算。這在實驗階段很方便,但一旦資料「定稿」就會變成一場災難。若要凍結隨機輸出:

  1. 選取包含隨機字串或數字的儲存格。
  2. 按下 Ctrl + C 複製。
  3. 按下 Ctrl + Shift + V 開啟選擇性貼上。
  4. 選擇 值,然後按下確定。

公式將會被取代為純文字或純數字,數值從此永遠固定。這個簡單的步驟,就是乾淨資料集與會在你分析過程中悄悄變動的資料集之間的差別。

在 Excel 中產生隨機字母與數字的常見用途

  • 測試資料。 為 QA 腳本與展示產生數百個假訂單編號、電子郵件地址或折價碼。
  • 教學工具。 建立隨機化的拼字清單、分組指派或測驗題目順序。
  • 抽樣。 使用 =INDEX(A:A, RANDBETWEEN(2, COUNTA(A:A))) 隨機挑選部分資料列,而不必手動挑選名字。
  • 密碼或權杖建立。 為訪客或短期下載連結建立一次性的存取碼。
  • 遊戲與益智題。 為 Boggle 遊戲盤、Wheel of Fortune 回合或字母重組挑戰製作原型。

若想更深入了解如何為特定任務產生隨機文字,一鍵產生任何任務所需的隨機字母 的指南會更詳細地介紹其中幾個情境;而 Python 隨機字元指南 則向偏好寫程式的開發者展示相同的概念。

實用技巧與常見陷阱

當隨機輸出是你日常工作流程的一部分時,一些小習慣能真正省下不少時間。

  • 注意邊界值。 RANDBETWEEN 在兩端都是包含的,因此 RANDBETWEEN(0,9) 可能會剛好回傳 0 或剛好回傳 9。
  • 留意大小寫。 ASCII 65–90 是大寫,97–122 是小寫;若要在同一個公式中混合兩者,使用 CHOOSE 或用 RANDBETWEEN 在兩個範圍間切換都很容易達成。
  • 使用 SEQUENCE 控制長度。 在 Microsoft 365 中,TEXTJOIN("",TRUE,CHAR(SEQUENCE(8,1,65,90))) 能在單一儲存格中產生一組 8 字元的大寫字串,無需向下拖曳。
  • 驗證分佈。 如果你的模擬仰賴均勻分佈,請抽樣檢查一欄 RANDBETWEEN 的結果,以確認其分佈符合預期。
  • 必要時結合來源。 一個看起來真實的折價碼通常同時需要字母與數字,而這正是 Random Letter Generator 一鍵就能產生的混合輸出。

無論你是留在 Excel 中,還是改用瀏覽器工具,工作流程其實都一樣:挑選函數或工具、設定規則、產生結果、然後鎖定結果。只要做過幾次,在 Excel 中產生隨機字母與數字就會從 20 分鐘的工作,變成 2 分鐘就能搞定的事。

若想進一步了解,請參閱 在 Excel 中不使用公式產生隨機日期與時間