繁体   English   中英

谷歌表格脚本:获取表格命名范围已打开

[英]Google Sheets Script: Get Sheet a Named Range is On

有没有办法获得命名范围所在的工作表? 感谢@cooper 提供的脚本,我在单独的表格上列出了我所有的 NR 以供参考,但我还没有找到一种方法来获取表格的名称(或索引)。

function c_NamedRangeToSpreadsheet() {
// Author: Cooper
// Link: https://stackoverflow.com/a/64841828/190925
// Purpose: Record all NamedRanges by both Name and Range
  const ss=SpreadsheetApp.getActive();
  const nrA=ss.getNamedRanges();
  const targetSh = "NamedRanges";  

  let sh=ss.getSheetByName(targetSh); 
  sh.clear(); // MH

  let rowA=[];
  for(let i=0;i<nrA.length;i++) {
    let name=nrA[i].getName();
    let range=nrA[i].getRange().getA1Notation();
    rowA.push([name,'','',range]);
  }
  rowA.sort(); // MH   
  sh.getRange(1,1,rowA.length,4).setValues(rowA);
}

您可以使用getSheet()方法获取给定范围的工作表: https://developers.google.com/apps-script/reference/spreadsheet/range#getsheet

之后,您可以使用getName()获取工作表的名称( https://developers.google.com/apps-script/reference/spreadsheet/sheet#getname )或getIndex()获取其索引( https:// developer.google.com/apps-script/reference/spreadsheet/sheet#getindex )。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM