Google スプレッドシートでランダムな文字列を生成する方法
今回は、Google スプレッドシートでランダムな文字列を生成する方法を紹介します。
パスワードなどを作成する場合に便利です。
1. CONCATENATE + ARRAYFORMULA + MID + RANDARRAY を使う
以下の数式を使用すると、指定した長さのランダムな文字列を生成できます。
例: 8 文字のランダム文字列を作る場合
=CONCATENATE(ARRAYFORMULA(MID("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ", RANDARRAY(8, 1)*LEN("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ") + 1, 1)))
説明
CONCATENATE
:取り出された文字をひとつにまとめてランダムな文字列を作る。ARRAYFORMULA
:同じ処理を複数回実行する(ここでは 8 回繰り返し)。MID
:指定された位置から1文字を取り出す。"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
:ランダムに選ばれる文字の元となる文字列。RANDARRAY(8, 1)
: 8 個のランダムな数値を生成する。ここの数字を変更することで任意の文字数にすることができます。
式を短くしたい場合
次の式を使うことで、直接文字列を数式内に埋め込むまずに済みます。
=CONCATENATE(ARRAYFORMULA(MID($B$1, RANDARRAY(8)*LEN($B$1) + 1, 1)))
こちらの式では、$B$1
にランダムな文字列を入力することで式が短くなり、管理が楽になります。