セルを操作する

【GAS】スプレッドシートでテキストの書体を配列で変更する

GASでスプレッドシートでテキストの書体を配列で変更するには「setFontFamilies(fontFamilies) 」を利用する。

setFontFamilies(fontFamilies)

フォント ファミリーの長方形グリッドを設定します(この範囲のディメンションと一致させる必要があります)。フォント ファミリーの例は「≠」または「Helvetica」です。

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

スプレッドシートでテキストの書体を配列で変更するGAS実行の様子

setFontFamilies(fontFamilies) メソッドを利用して、スプレッドシートでテキストの書体を配列で変更するGASを実行してみました。

setFontFamilies(fontFamilies)を実行することで、

  • 配列範囲で
  • 複数セルの書体を変更する

といった操作が可能です。セルの書体すべてが変更になる点に、注意が必要です。

また、setFontFamiliesで指定する書体は、SpreadSheet上で指定する書体と同じキャメル方式で指定します

スプレッドシートで数値・日付を指定した書式に設定する場合は、以下記事を御覧ください。

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

スプレッドシートでテキストの書体を配列で変更するGAS

function textarray(){
  //SpreadsheetAppを起動
  let ss = SpreadsheetApp.getActiveSpreadsheet();
  //0番目のシートを取得
  let sht = ss.getSheets()[0];
 //シート全体をクリア
  sht.clear();
 //変数valに入力されたA列セル値を格納
  const val = Browser.inputBox("任意のA列セルを入力してください(A1形式)");
  //rwにvalの行数を格納
  const rw = sht.getRange(val).getRow();
  //startにvalのA1形式を格納
  const start = sht.getRange(val).getA1Notation();
  //endにvalセルからずらした範囲を格納
  const end = sht.getRange(rw+1,4).getA1Notation();
 //textに適当な文字を格納
  const text = [
    ["SpreadSheet","Blue",".com"]
  ];
  //100行分、textを繰り返し入力して最右端列にはナンバリング
  for(let i=1;i<=100;i++){
    sht.getRange(i,1).setValue(i);
    sht.getRange(i,2,1,3).setValues(text);
  }
 //setFontFamiliesで設定する書式をfontsに配列で設定
  const fonts = [
    ["Impact","Kaushan Script","Carter One","Rock Salt"],
    ["Press Start 2P","Anton","Pacifico","Permanent Marker"]
  ];
 //cellに配列範囲を設定して格納
  const cell = sht.getRange(start+":"+end);
 //cell範囲の背景を黄色に
 //■setFontFamiliesで書式を設定
  cell
  .setBackground("yellow")
  .setFontFamilies(fonts);
}

setFontFamilies(fontFamilies)のパラメーター

名前説明
fontFamiliesObject[][]フォント ファミリーの 2 次元配列。null 値ではフォント ファミリーがリセットされます。
setFontFamilies(fontFamilies)のパラメーター

setFontFamilies(fontFamilies) の戻り値

Range - チェーン用の範囲。

スプレッドシートでテキストの書体を配列で変更するまとめ

GAS×スプレッドシートでテキストの書体を配列で変更するならsetFontFamilies(fontFamilies) メソッドを利用しましょう。

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

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

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

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

-セルを操作する