GASでスプレッドシートの名前付き範囲を取得するには「getNamedRanges()
」を利用する。
getNamedRanges()
このスプレッドシート内のすべての名前付き範囲を取得します。
https://developers.google.com/apps-script/reference/spreadsheet/spreadsheet#getnamedranges
スプレッドシートの名前付き範囲を取得するGAS実行の様子
getNamedRanges()メソッドを利用して、スプレッドシートの名前付き範囲を取得するGASを実行してみました。
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】スプレッドシートの選択された範囲を取得する