我正在寻找一种方法来编写一个与google工作表中的vLookup类似的脚本。
Here is a link to a simplified example document.
我想要做的是使用“Sheet1”作为一种形式。当我在“Sheet1”列中输入信息时,BI希望能够点击自定义菜单按钮并让“Sheet1”列B中的信息根据A列中的值自动填充到“Sheet 2”的第一个空列中。
我可以编写脚本来创建自定义菜单并执行函数,但我不确定如何编写函数本身。
答案 0 :(得分:0)
以下是这样的功能的外观。它获取指向每个工作表的指针,然后是每个工作表的适当范围:列A和B,忽略底部的空行。然后获取值并开始比较它们:当列A匹配时,将列B分配给。最后一行将修改后的数组values
放回Sheet2。
function vl() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet1 = ss.getSheetByName('Sheet1');
var sheet2 = ss.getSheetByName('Sheet2');
var range1 = sheet1.getRange(1, 1, sheet1.getLastRow(), 2);
var range2 = sheet2.getRange(1, 1, sheet2.getLastRow(), 2);
var values1 = range1.getValues();
var values2 = range2.getValues();
for (var i = 0; i < values1.length; i++) {
for (var j = 0; j < values2.length; j++) {
if (values1[i][0] === values2[i][0]) {
values2[i][1] = values1[i][0];
}
}
}
range2.setValues(values2);
}