![見出し画像](https://assets.st-note.com/production/uploads/images/140026599/rectangle_large_type_2_2a9e5616f5df143ca53081a5b209fead.png?width=800)
【AppSheet小技】UNIQUEID関数に準拠したIDを生成するGASを紹介
みなさま、こんにちは!滋賀県でIT・DXコンサルタントをしています、むらやまです。
AppSheetのUNIQUEID関数は、
アルファベットのa~zと数字の0~9で構成された8桁のランダムIDを生成します。
例えばこんな感じ
nxpbdwu7
lago4aec
84uhc4qg
スプレッドシートでAppSheetのデータソースを作成するときに、AppSheetに取り込む前にこのIDを生成したいケースが多々あります。
そんなときにこのGASで、スプレッドシート内の関数からUNIQUEIDを生成することができます。
手順
こんなシートがあるとして、左の商品IDにIDを付与して流し込みたい場合で説明します。
![](https://assets.st-note.com/img/1715226479987-SgtfcLmChe.png?width=800)
スプレッドシートのメニューバーの「拡張機能」から「AppScript」を選択。
![](https://assets.st-note.com/img/1715226599760-dCpNpbQd8G.png?width=800)
するとこのような画面が表示されます。
![](https://assets.st-note.com/img/1715226616383-7n80joWLxd.png?width=800)
function myFunction() {
}
をすべて削除して、以下のコードをコピー&ペーストします。
function uniqueid() {
var characters = 'abcdefghijklmnopqrstuvwxyz0123456789';
var idLength = 8;
var randomId = '';
for (var i = 0; i < idLength; i++) {
var randomIndex = Math.floor(Math.random() * characters.length);
randomId += characters.charAt(randomIndex);
}
return randomId;
}
![](https://assets.st-note.com/img/1715226692034-4rtFVtMQfU.png?width=800)
それでは、フロッピーのアイコンの保存を押下し、閉じて結構です。
スプレッドシートに戻り、IDを生成したいセルに以下の関数を入力します。
=uniqueid()
![](https://assets.st-note.com/img/1715226843411-hI9lEn8Bhw.png?width=800)
Enterを押下すると、「読み込んでいます…」表示のあとIDが生成されます。
![](https://assets.st-note.com/img/1715226877404-AeQkWJOQvf.png?width=800)
あとはほしい範囲までコピーすれば一気にUNIQUEIDを生成することができます。
![](https://assets.st-note.com/img/1715226890608-pNiybyOCvQ.png)
最後に
本記事をお読みいただきありがとうございました。
AppSheetで中小企業向けDXと銘打ち、AppSheetの解説記事を連載中です。
興味がありましたら、あわせてお読みください。
この記事が気に入ったらサポートをしてみませんか?