获取匹配值的电子表格行
Get the spreadsheet row for a matched value
我是Google Apps Script的新手&我正试图为电子表格制作一个脚本,在那里我可以得到匹配值的范围。但是对于单元格值没有函数比如.getRow()
或者.getRange()
或者类似的东西,因为它是一个字符串值。这是我的代码,
function getInfo() {
var ss1 = sheet1.getSheetByName("Sheet1");
var ss2 = sheet2.getSheetByName("Rates");
var getCountry = ss1.getRange(ss1.getLastRow(), 11).getValue();
var countryRange = ss2.getRange(2, 1, ss2.getLastRow(), 1).getValues();
var getZone = 0;
for (var i = 0; i < countryRange.length; i++) {
if (countryRange[i] == getCountry) {
var getrow_cr = countryRange[i].getRow(); //.getRow() doesn't apply here for string value
getZone = ss2.getRange(getrow_cr + 1, 2).getValue();
}
}
Logger.log(getZone);
}
我如何获得匹配字符串的行,以便我可以在匹配的单元格值旁边获得单元格值?
您的循环变量i
从0开始,在您的情况下相当于第2行。为了保持清晰,您可以使用一个命名变量来跟踪带有数据的第一行:
var firstrow = 2;
然后当您找到匹配时,它所在的电子表格行是i + firstrow
。
更新代码:
function getInfo() {
var ss1 = sheet1.getSheetByName("Sheet1");
var ss2 = sheet2.getSheetByName("Rates");
var getCountry = ss1.getRange(ss1.getLastRow(), 11).getValue();
var firstrow = 2;
var countryRange = ss2.getRange(firstrow, 1, ss2.getLastRow(), 1).getValues();
var getZone = 0;
for (var i = 0; i < countryRange.length; i++) {
if (countryRange[i][0] == getCountry) {
var getrow_cr = i + firstrow;
getZone = ss2.getRange(getrow_cr, 2).getValue();
break; // Found what we needed; exit loop
}
}
Logger.log(getZone);
}
由于countryRange
是一个二维数组,每行有一个元素,因此引用i
行的值的正确方法是countryRange[i][0]
。如果您只比较countryRange[i]
,则依赖于JavaScript解释器将"row"强制转换为String对象。
相关文章:
- Google电子表格getValue([cell containing ])不返回制表符
- 区分电子表格中的空单元格和0值
- 使用外部数据创建仪表板(谷歌电子表格)-JavaScript
- 如何使用Google Sheets API+Javascript阅读电子表格
- 谷歌电子表格的自定义xml解析功能
- SIMPLE Javascript代码,用于显示谷歌电子表格中单个字段的数据
- 在谷歌电子表格中循环单元格
- 如果填写了特定值,则通过电子邮件发送电子表格中的数据
- 使用AngularJS制作一个类似电子表格的应用程序
- 有没有一种方法可以使用Javascript检索谷歌表单ITSELF(而不是电子表格)的数据
- 使用谷歌应用程序脚本制作基于谷歌电子表格的带有列表框的网络应用程序
- GAS-onChange触发器(获取值)从活动表和写入另一个电子表格
- 谷歌电子表格 - 从Zoho获取记录
- 在脚本中从电子表格中获取数据:“未定义数据表”
- 谷歌脚本获取谷歌电子表格菜单内容
- 从Google Drive电子表格单元格获取数据
- 获取匹配值的电子表格行
- 通过getContext - Google Apps Script -电子表格从HTML标签中获取文本
- 谷歌电子表格脚本-获取日期作为数字
- 如何使用 YouTube API 将视频观看次数获取到 Google 电子表格中