• 跳至主要導覽
  • 跳至主要內容
  • 跳至主要資訊欄
Office 指南

Office 指南

辦公室工作實用教學

  • Excel
  • Word
  • PowerPoint
  • Windows
  • PowerShell
  • R

Excel 以亂數產生隨機密碼的公式教學

在 Excel 中以亂數自動產生隨機的密碼。

問題

如何在 Excel 中自動產生隨機的亂數密碼,包含大、小寫英文字母、數字與特殊符號等?

解法

Excel 中有許多可以用來產生亂數的函數,只要善用這類的函數,就可以快速產生各式各樣的隨機密碼,以下是產生各種密碼的方式與範例。

基本密碼產生方式

一般的密碼大概都是由「大寫英文」、「小寫英文」、「數字」與「特殊符號」所組成的,若要產生這些資料,可以在查詢 ASCII 表之後,使用 RANDBETWEEN 產生對應的亂數值,再透過 CHAR 轉為對應的字符。

舉例來說,若要以亂數產生一個大寫英文字母,可以先用 RANDBETWEEN 產生一個 65 到 90 之間的數字(也就是 A 到 Z 的 ASCII 碼),然後再用 CHAR 轉為對應的英文字母:

=CHAR(RANDBETWEEN(65,90))
隨機產生大寫英文字母

類似的方式也可以用於產生一個小寫英文字母:

=CHAR(RANDBETWEEN(97,122))
隨機產生小寫英文字母

如果單純只要產生隨機的數字,就只要呼叫一次 RANDBETWEEN 函數,即可產生多個數字。例如以亂數產生三個數字:

=RANDBETWEEN(100,999)
隨機產生數字

如果要讓密碼強度更高,可以將亂數的範圍設定為整個 ASCII「可顯示字元」的範圍,直接從大、小寫英文字母、數字或符號中取出字符:

=CHAR(RANDBETWEEN(33,126))
隨機產生可顯示字元

產生隨機密碼

熟悉了基本的亂數字符產生方式之後,只要把它們用 & 這個字串連接運算子串接起來,就可以生成我們需要的隨機密碼了。

例如若想要產生兩個大寫英文,加上四位數字的密碼,就可以這樣寫:

=CHAR(RANDBETWEEN(65,90))&CHAR(RANDBETWEEN(65,90))&RANDBETWEEN(1000,9909)
產生隨機密碼

若要產生長度為 8,包含大小寫英文、數字與特殊符號的密碼,可以這樣寫(也就是把 8 個產生「可顯示字元」的公式串起來):

=CHAR(RANDBETWEEN(33,126))&CHAR(RANDBETWEEN(33,126))&CHAR(RANDBETWEEN(33,126))&CHAR(RANDBETWEEN(33,126))&CHAR(RANDBETWEEN(33,126))&CHAR(RANDBETWEEN(33,126))&CHAR(RANDBETWEEN(33,126))&CHAR(RANDBETWEEN(33,126))
產生隨機密碼

分類:Excel

讀者互動方式

留言

  1. 小N 表示:

    2021-09-1310:18:23

    請問這樣的做法會不會重覆呢?

    回覆

發佈留言 取消回覆

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

主要資訊欄

搜尋

近期文章

  • C++ 語言使用 Crypto++ 實作 RSA 數位簽章教學與範例
  • C++ 語言使用 Crypto++ 實作 RSA-OAEP 搭配 SHA256 加密教學與範例
  • C++ 語言使用 Crypto++ 實作 AES 加密、解密、認證加密教學與範例
  • C++ 語言使用 Crypto++ 實作 MD5、SHA1、SHA2、BLAKE2 雜湊教學與範例
  • Ubuntu Linux 安裝、使用 Crypto++ 加密函式庫教學與範例
  • C 語言使用 OpenSSL 實作橢圓曲線 ECDH 金鑰交換教學與範例
  • Python 以 eciespy 實作 ECC 非對稱式加密方法教學與範例
  • C 語言使用 OpenSSL 實作 PBKDF2 教學與範例

推薦網站

  • Udemy 線上教學課程
  • Coursera 線上教學課程

關注本站

  • 電子郵件
  • Facebook

公益

  • 家扶基金會
  • 台灣世界展望會
  • Yahoo 奇摩公益
  • igiving 公益網
  • 兒福聯盟

Copyright © 2021 · Office Guide