GAS触ったこと無いマンが、GASでランダムに数字を出力する機能作ってみた
背景
毎日の定例で雑談枠を設けているのだが、雑談ネタ一覧スプレッドシートを用意しておき、雑談ネタに困った時にそこからピックアップするようにした。
参考記事
その日のネタをランダムに選択するために、GASでランダムに数字を出力する機能を作ってみた。
やりたいこと
- ボタンをクリックするとランダムで1つの数字を出力する
- 出力された数字の行に自動的に移動してくれると嬉しい
作成物
function myFunction() { const spreadSheet = SpreadsheetApp.getActiveSheet(); // 見出しを除いた最小値 const minLength = 2; // ネタ数 const maxLength = spreadSheet.getLastRow(); // ランダムに数を生成 const num = Math.floor(Math.random() * (maxLength + 1 - minLength)) + minLength; // D1に結果を出力 spreadSheet.getRange(1, 4).setValue(num); // 結果で出力されたセルをアクティブにする const sell = spreadSheet.getRange(num, 1); spreadSheet.setActiveRange(sell); }
こんな感じで、ボタンを押すとD1セルに数字が表示されるようになった。(デザインセンスが糞)
参考にした記事
- 乱数の作成
【JavaScript入門】乱数の作り方(範囲指定/重複なし/ランダム文字列) | 侍エンジニアブログ - スプレッドシートでのGASの使い方
GAS(Google Apps Script)入門|エクセルの神髄
感想
すごく簡単にマクロ的なものが使える。
Javascriptで書けるので、結構いろんな処理ができるのかなーと予想。
もっといろいろ書いていきたい。