セル範囲を操作する

【GAS】スプレッドシートの名前付き範囲を取得する

GASでスプレッドシートの名前付き範囲を取得するには「getNamedRanges()」を利用する。

getNamedRanges()

このスプレッドシート内のすべての名前付き範囲を取得します。

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

スプレッドシートの名前付き範囲を取得するGAS実行の様子

getNamedRanges()メソッドを利用して、スプレッドシートの名前付き範囲を取得するGASを実行してみました。

getNamedRanges()
getNamedRanges()を実行した様子

getRange(a1Notation)メソッドでスプレッドシートのセル範囲をA1形式で指定・選択する場合は、以下記事を御覧ください。

参照記事:【GAS】スプレッドシートでセル範囲をA1形式で指定・選択する

スプレッドシートの名前付き範囲を取得するGAS

function getNamedRanges(){
  // スプレッドシートを起動
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  // 0番目のシートを選択
  var sht = ss.getSheets()[0];
  // メッセージを表示する
  var txt = Browser.msgBox("任意のセル範囲に名前を付与しますか?",Browser.Buttons.YES_NO_CANCEL);

 // yesなら
  if(txt == "yes"){

    // インプットボックスに名前を入力
    var msg = Browser.inputBox("セル範囲に付与する名前を入力してください");
    var cell = Browser.inputBox("名前を付与するセルをA1形式で指定してください");

    //getRange(cell)をアクティブに
    sht.getRange(cell).activate();
    sht.getRange(cell).setBackground("yellow");

    //■setNamedRangesでセル範囲に名前を付与する
    ss.setNamedRange(msg,SpreadsheetApp.getActiveRange());
      Browser.msgBox("セル範囲「"+cell+"」に名前「"+msg+"」を付与しました。")
    }else{
      Browser.msgBox("セル範囲に名前を付与しませんでした");
    }
}

getNamedRanges()の戻り値

NamedRange[]—スプレッドシート内のすべての名前付き範囲の配列。

スプレッドシートの名前付き範囲を取得するまとめ

GAS×スプレッドシートの名前付き範囲を取得するならgetNamedRanges()メソッドを利用しましょう。

関連記事:【GAS】スプレッドシートでセル範囲をA1形式で指定・選択する

関連記事:【GAS】スプレッドシートで指定範囲をアクティブシートの選択セルに設定する

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

関連記事:【GAS】スプレッドシートの選択された範囲を取得する

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

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

-セル範囲を操作する