查找范围内的单元格

时间:2020-09-06 17:07:43

标签: google-apps-script google-sheets

我有一个不知道它包含什么的范围(不是大小也不是值)。

现在,我要检查'B2:B4'是否在aRange内,并获取B2:B4的值(如果确实在aRange内)。

我很沮丧,无法弄清楚如何解决这个(显然对我来说)琐碎的要求。

谢谢您的任何建议。

1 个答案:

答案 0 :(得分:0)

B2:B4完全匹配给定范围:

尝试range.getA1Notation()

function myFunction(){

const ss = SpreadsheetApp.getActive();
const sh = ss.getSheetByName('Sheet1');
const range = sh.getRange('B2:B4'); //given range
 
  if (range.getA1Notation()=='B2:B4'){
    var vals = range.getValues().flat(); //flat is optional but it returns 1D list
  }
Logger.log(vals)
}

B2:B4在给定范围内:

如Cooper在其评论中建议的那样,使用getRow()getColumn()getWidth()getHeight()

function myFunction(){

const ss = SpreadsheetApp.getActive();
const sh = ss.getSheetByName('Sheet1');
const range = sh.getRange('B1:B5'); //given range 

  if(range.getRow()<=2 && range.getColumn()<=2 && range.getWidth()>=1 && range.getHeight()>=3){
    var vals = sh.getRange('B2:B4').getValues().flat(); //flat is optional but it returns 1D list
  }
  Logger.log(vals)
}

参考:

相关问题