我一直在为我的谷歌工作表编写一个脚本,它从一个单元格中获取一个完整的字符串,并将它们与第二个工作表上的关键字列表进行比较,这应该返回列号。还有更多事情要做,但我遇到了一些麻烦。
我尝试了几种方法,现在我正在尝试正则表达式。我想我正在正确使用它。我的逻辑是,如果关键字的正则表达式匹配原始查询的任何完整单词,则返回 true 和列号。
我有“标签”表偏移中的单元格。但它检查正确的范围。
function returnTag(narration){
var main = SpreadsheetApp.getActiveSpreadsheet();
var tagsheet = main.getSheetByName('Tags');
var numRows = tagsheet.getLastRow();
var numCols = tagsheet.getLastColumn();
var range = tagsheet.getRange(6, 2, numRows-5, numCols-1);
var row;
var col;
for (var col = 1; col <= numCols-1; col++) {
for (var row = 1; row <= numRows-5; row++) {
var currentValue = range.getCell(row,col).getValue();
var regExp = new RegExp("\b"+narration+"\b","gi");
if(regExp.test(currentValue)) {
return(col);
}
else{ }
}
}
}
我希望如果我在第一张纸的 A2 中输入“海里有很多鱼”,它将返回 2 作为它在第一张纸的 A1 中找到的列引用。
我分享了以下表格的可编辑副本。
https://docs.google.com/spreadsheets/d/19FDT6ximWg4AcGzDTuqC4AYIW4MgXFwlUH0wYfGQi8s/edit?usp=sharing
谢谢 :)
千巷猫影
相关分类