セルを操作する

【GAS】スプレッドシートで文字サイズを複数・配列で変更する

GASでスプレッドシートで文字サイズを複数(配列)で設定するには「setFontSizes(sizes) 」を利用する。

setFontSizes(sizes)

フォントサイズの長方形のグリッドを設定します(この範囲の寸法と一致する必要があります)。サイズはポイント単位です。

https://developers.google.com/apps-script/reference/spreadsheet/range#setfontsizessizes

スプレッドシートで文字サイズを複数(配列)で設定するGAS実行の様子

setFontSizes(sizes) メソッドを利用して、スプレッドシートで文字サイズを複数(配列)で設定するGASを実行してみました。

setFontSizes(sizes)を実行することで、

  • 任意セル範囲(配列)に対して一括で文字サイズを変更する

といった操作が可能です。

スプレッドシートでテキストのラインスタイルを設定する場合は、以下記事を御覧ください。

参照記事:【GAS】スプレッドシートでテキストのラインスタイルを設定する

スプレッドシートで文字サイズを複数(配列)で設定するGAS

function fontsizes(){
//SpreadsheetAppを起動してActiveSheetに
 let ss = SpreadsheetApp.getActiveSheet();
//シート全体をクリア
 ss.clear();
//変数valにBrowser.inputBoxの値を格納
 const val = Browser.inputBox("任意のセルを入力して下さい");
//変数textにテキストSpreadSheet.blueを格納
 const text = "SpreadSheet.Blue";
//もしvalが空白でない場合
 if(val !== ""){
 //縦に20行
   for(let i=1;i<=20;i++){
  //横に10列
     for(let r=1;r<=10;r++){
   //繰り返し処理でtextを設置する
       ss.getRange(i,r).setValue(text);
     }
   }
 //rangeにss.getRange(val)を格納
   const range = ss.getRange(val);
  //startにrange.getA1Notation()を格納
   const start = range.getA1Notation();
  //endにrange.offset(2,3).getA1…を格納
   const end = range.offset(2,3).getA1Notation();
 //rngにss.getRange(start+end)を格納
   const rng = ss.getRange(start+":"+end);
 //fontSizesに配列でテキストサイズを設置
   const fontSizes = [
     [6,8,10,12],
     [14,16,18,20],
     [22,24,26,28]
   ];
 //rngをアクティブに・背景黄色に・setFontSizesでfontSizesを設置
   rng
   .activate()
   .setBackground("yellow")
   .setFontWeight("bold")
   .setFontSizes(fontSizes);
 }else{
 //valが空白の場合は作業中止を掲載
   Browser.msgBox("作業を中止しました");
 }
}

setFontSizes(sizes)のパラメーター

名前説明
sizesObject[][]サイズの 2 次元配列。
setFontSizes(sizes)のパラメーター

setFontSizes(sizes)の戻り値

Range - チェーン用の範囲。

スプレッドシートで文字サイズを複数(配列)で設定するまとめ

GAS×スプレッドシートで文字サイズを複数(配列)で設定するならsetFontSizes(sizes) メソッドを利用しましょう。

関連記事:【GAS】スプレッドシートに数式を設定する

関連記事:【GAS】スプレッドシートで数式を複数設定する

関連記事:【GAS】スプレッドシートで数式をR1C1形式で設定する

関連記事:【GAS】スプレッドシートで数値・日付を指定した書式に設定する

-セルを操作する