[st-kaiwa1]こんにちは!しゅうぺいです[/st-kaiwa1]
Google apps scriptの備忘録です
色々なサイトから紹介されているスクリプトを自分なりにいじって載せています。
今回は「セルに数字を書き込んだら色が自動で変わるスクリプト」です
用途
セルに特定の数字を入れたら、その列の任意のセルの色が変わります
スプレッドシートを視覚的にも管理したい
いちいち色をぬるのは面倒
という方には非常に効果を発揮するスクリプトです
コード
function change(evt) { // アクティブシート取得 var ss = evt.source.getActiveSheet(); // アクティブセル取得 var cell = evt.source.getActiveRange(); // セルの値を取得 var val = cell.getValue(); // 1列目が2だった時 if( cell.getColumn() == 1 && (val == 2) ) { // 変更のあったセルの有る行番号 var r = cell.getRow(); // 変更のあったセルの有る行を選択 if(val == 2) { // 1列目のセルの値が 2なら 1列目を(102, 187, 0)に塗って、10列目までRGB(90, 90, 90) で塗る var rowRange = ss.getRange(r, 1, 1, 10); rowRange.setBackgroundRGB(90, 90, 90); var rowRange = ss.getRange(r, 1); rowRange.setBackgroundRGB(102, 187, 0); } } }
コピペしてスクリプトに貼り付けし、トリガーを設定します。
トリガーとは、どのタイミングでスクリプトを起動させるかという設定です。
(言葉の意味は引き金という意味です。)
下記のように設定すると、文字を入力した時にスクリプトが動くという設定になります。
実行結果
A列に「2」を入力すると、1列目を緑に塗り、10列目まで灰色に自動的に塗っていきます。
これによって、スプレッドシートの管理を視覚的に管理することができます。
簡単なスクリプトなのに、非常に面白く効果が高いものであるのでぜひ試してください。