Google apps scriptでスプレッドシートの複数セルの文字色を変える

Google apps scriptでスプレッドシートの複数セルの文字色を変えるには

  • setFontColors(colors)

を使う。要配列。

前回|指定したセルのみ文字色を変える方法

・setFontColors(colors)
フォント色の長方形のグリッドを設定します(この範囲の寸法と一致する必要があります)。色はCSS表記(’#ffffff’またはのような’white’)で表示されます。

タイプ 説明
colors Object[][] CSS記法での色の2次元配列(’#ffffff’またはの ような’white’)。null値が色をリセットする

戻る
Range – 連鎖の範囲

参照:range#setFontColors(Object)

Google apps scriptでスプレッドシートの複数セルの文字色を変えるスクリプト

B4:D6セル範囲を取得して、あいうえおとテキスト入力。4、5、6行目の文字色を分けて色付け。

  • 4行目:[“red”, “yellow”, “blue”]
  • 5行目:[“#FF0000”, “#23a31a”, “#0000FF”]
  • 6行目:[“green”,”#a01992″,”#1a3ea1″]

テキストの中央配置と罫線付与も行った。

/*複数のセルにある文字色を一度に変える*/
function fontcolors() {

//スプレッドシートAppを呼び出し
 var ss = SpreadsheetApp.getActiveSpreadsheet();
//0番目のシートを取得
 var sht = ss.getSheets()[0];

//文字を入れる範囲B4:D6を取得
  var rng = sht.getRange("B4:D6");
//範囲にテキストを入力
 rng.setValue("あいうえお");
 
//文字色を指定
 var colors = [
   ["red", "yellow", "blue"],//4行目の色(赤、黄色、青)
   ["#FF0000", "#23a31a", "#0000FF"],//5行目の色(赤、緑、薄青)
   ["green","#a01992","#1a3ea1"]//6行目の色(緑、臙脂、紺)
 ];
//テキスト(指定範囲)に文字色をセットする
 rng.setFontColors(colors);
 
//テキストを中央位置へ
 rng.setHorizontalAlignment('center');

//罫線付与
//setBorder(top, left, bottom, right, vertical, horizontal, color, style)
 rng.setBorder(true,true,true,true,true,true,'black',null)
}

Google apps scriptでスプレッドシートの複数セルの文字色を変えるsample

 

まとめ

配列を使うので単純に文字色を変えるよりは少しむずかしい。

だけど一気に複数のセル範囲の文字色を変更出来るので、後からテーブルの1行だけ文字色を変えたい時にオススメ。

>>スプレッドシートの文字色を変える

>>スプレッドシートの文字色を取得する

>>スプレッドシートの複数セルの背景色を変える

>>スプレッドシートのセルに罫線を作成して色を変える