シートを操作する

【GAS】スプレッドシートのシートレイアウトを変更する

GASでスプレッドシートのシートレイアウトを変更するには「setRightToLeft(rightToLeft)」を利用する。

setRightToLeft(rightToLeft)

シートレイアウトを右から左に設定または設定解除します

https://developers.google.com/apps-script/reference/spreadsheet/sheet#setrighttoleftrighttoleft

スプレッドシートのシートレイアウトを変更するGAS実行の様子

setRightToLeft(rightToLeft)メソッドを利用して、スプレッドシートのシートレイアウトを変更するGASを実行してみました。

setRightToLeft(rightToLeft)-yes
setRightToLeft(rightToLeft)を実行した場合

setRightToLeft(rightToLeft)を利用する際に、()の値を

  • trueにすると右上がA1セルに
  • falseにすると左上がA1セルに

といった指定を行うことで、シートレイアウトの変更を可能とします。

参照記事:【GAS】スプレッドシートのグリッド線を非表示にする

スプレッドシートのシートレイアウトを変更するGAS

function setrightleft(){
  //SpreadsheetAppを起動
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  //0番目のシートを取得
  var sht = ss.getSheets()[0];
  //見出しテキストを作成
  var midashi = [
    ["概要","内容","項目","ナンバリング"]
  ];
 //見出しテキストを1行目に設置
  sht.getRange("A1:D1").setValues(midashi);
  //見出しテキストを装飾
  sht.getRange("A1:D1").setFontWeight("bold").setFontSize(20);
 //繰返しテキストを変数へ格納
  var array1,array2,array3
    array1 = "Spread";
    array2 = "Sheet";
    array3 = ".BLUE";
 //変数を繰り返しA~D列の11行目まで入力
  for(let i=2;i<=11;i++){
    sht.getRange(i,1).setValue(array1);//11行目までarray1をセット
    sht.getRange(i,2).setValue(array2);//11行目までarray2をセット
    sht.getRange(i,3).setValue(array3);//11行目までarray3をセット
    var array = array1+array2+array3;  //配列テキストの合体!
    sht.getRange(i,4).setValue(array+(i-1));//11行目まで連番でセット
  }
  //YESNOをyesnoへ格納
  var yesno = Browser.msgBox("シートレイアウトを右上隅に変更しますか?",Browser.Buttons.YES_NO_CANCEL);
 //ーーーーー条件分岐ーーーーー
  //YESだったら
    if(yesno == "yes"){
      //setRightToLeft(true)でA1セルを右上に設定
      sht.setRightToLeft(true);
      //レイアウト変更した旨をメッセージで掲載
     Browser.msgBox("右隅をA1セルへ変更しました");
    }else{
      //setRightToLeft(false)でA1セルを左上に設定
      sht.setRightToLeft(false);
      //レイアウト変更した旨をメッセージで掲載
     Browser.msgBox("左隅をA1セルとしました");
    }
 //ーーーーーここまでーーーーー
 //A1セルをアクティブに
  sht.getRange(1,1).activate();
}

setRightToLeft(rightToLeft)のパラメーター

名前タイプ説明
rightToLeftBooleantrueの場合、シートレイアウトは右から左に設定され、セルA1が右上隅にあります。falseの場合、シートレイアウトはデフォルトの左から右に設定され、セルA1が左上になります。
setRightToLeft(rightToLeft)のパラメーター

setRightToLeft(rightToLeft)の戻り値

Sheet—このシート、連鎖用。

スプレッドシートのシートレイアウトを変更するまとめ

GAS×スプレッドシートのシートレイアウトを変更するならsetRightToLeft(rightToLeft)メソッドを利用しましょう。

先のグリッド線を非表示するsetHiddenGridlines()とともに、setRightToLeftも意外と使えるメソッドなので、覚えておくことをオススメします。

関連記事:【GAS】スプレッドシートのグリッド線を非表示にする

関連記事:【GAS】スプレッドシートのシート名を変更する

関連記事:【GAS】スプレッドシートをコピーして新規シートを作成する

関連記事:【GAS】スプレッドシートで指定した名前で新規シートを作成する

関連記事:【GAS】スプレッドシートのアクティブシートを削除する

関連記事:【GAS】スプレッドシートで現在アクティブなシートを返す

関連記事:【GAS】スプレッドシートで名前・行・列数を指定して新規シートする

関連記事:【GAS】スプレッドシートのアクティブシートの名前を取得する

関連記事:【GAS】スプレッドシートでアクティブなシートを返す

関連記事:【GAS】スプレッドシートでアクティブなシートを取得する

-シートを操作する