GASでスプレッドシートの複数文字を斜体に変更するには「setFontStyles(fontStyles)
」を利用する。
setFontStyles(fontStyles)
フォント スタイルの長方形グリッドを設定します(この範囲の寸法と一致する必要があります)。
https://developers.google.com/apps-script/reference/spreadsheet/range#setfontstylesfontstyles
スプレッドシートの複数文字を斜体に変更するGAS実行の様子
setFontStyles(fontStyles) メソッドを利用して、スプレッドシートの複数文字を斜体に変更するGASを実行してみました。
setFontStyles(fontStyles)を実行することで、
- 任意セル範囲(配列範囲)に対して一括で文字を斜体 or デフォルトへ変更する
といった操作が可能です。
スプレッドシートでテキストのラインスタイルを設定する場合は、以下記事を御覧ください。
参照記事:【GAS】スプレッドシートでテキストのラインスタイルを設定する
スプレッドシートの複数文字を斜体に変更するGAS
function fontstyles(){
//SpreadsheeAppを起動
let ss = SpreadsheetApp.getActiveSheet();
//シート全体をクリア
ss.clear();
//valにセルの値を格納
const val = Browser.inputBox("書式変更したいセルを入力して下さい");
//textに適当なテキストを格納
const text = "Spreadsheet.Blue";
//もしvalが空白でなかったら
if(val !== ""){
//30行繰り返し処理
for(let i=1;i<=30;i++){
//10列繰り返し処理
for(let r=1;r<=10;r++){
//ss.getRange(i,r)にtextを設置
ss.getRange(i,r).setValue(text);
}
}
//startにvalをA1形式で格納
const start = ss.getRange(val).getA1Notation()
//endにvalを始点にoffset(2,1)をA1形式で格納
const end = ss.getRange(val).offset(2,1).getA1Notation();
//rangeにss.getRange(start:end)を格納
const range = ss.getRange(start+":"+end);
//fntstylesにフォントスタイルを配列で格納
const fntstyles = [
["italic","normal"],
["italic","italic"],
["normal","italic"]
];
//範囲rangeをアクティブに・背景黄色に・ふと文字に・setFontStylesを配列に設定
range
.activate()
.setBackground("yellow")
.setFontWeight("bold")
.setFontStyles(fntstyles);
//valが空白の場合
}else{
//作業を中止した旨を掲載する
Browser.msgBox("セル入力がないため作業を中止しました");
}
}
setFontStyles(fontStyles)のパラメーター
名前 | 型 | 説明 |
---|---|---|
fontStyles | Object[][] | フォントスタイルの2次元配列('italic' または 'normal')。null値はフォントスタイルをリセットします。 |
setFontStyles(fontStyles)の戻り値
Range - チェーン用の範囲。
スプレッドシートの複数文字を斜体に変更するまとめ
GAS×スプレッドシートの複数文字を斜体に変更するならsetFontStyles(fontStyles)
メソッドを利用しましょう。