我一直致力于制作一个程序,该程序将采用表单响应,比较列中的一个单元格(例如主题),并将其粘贴到另一个工作表中的相应行中。我现在已经开展了几个星期的工作,但似乎因为几个问题而陷入困境。
function checkForDuplicate() {
//Sets 'data' as the variable holding values from the first sheet.
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("responses");
var data = sheet.getDataRange().getValues();
//Sets 'data2' as the variable holding values from the second sheet.
var sheet2 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Form Responses 2");
var data2 = sheet2.getDataRange().getValues();
//Sets a variable for the numerical length of data
var responsesLength = data.length;
var x = 1;
var y = 0;
//Finds a value that is the same as one in the second sheet.
while (true) {
var input = data[responsesLength - 1][0];
var output = data2[y][0]
Logger.log(input);
Logger.log(output);
if (input == output) {
var rowLength = data[responsesLength - 1].length;
for (var i = 0; i < rowLength; i++) {
copyData("responses", x, responsesLength, "Form Responses 2", x, 5);
x = x + 1
break;
}
} else {
y = y + 1;
Logger.log(y);
if (y >= 10) {
Logger.log("Error. No same value found.");
break;
}
}
}
}
&#13;
影响我自己的故障排除的一个主要问题是我的&#34; y&#34;变量将不会计入过去6.日志将继续记录y的值,但是一旦达到6,它将停止记录,并且由于程序没有结束,y将不会计数。我想知道是否有人知道解决这个问题?
以下是Logger提供的日志
Cotton Sweatshirt XLC将继续无限制,直到我杀死该程序。
https://docs.google.com/spreadsheets/d/1ZZTWTTkdAESBWhHhpurcDMtohfIlVvt9z5x9wc2GKQ8/edit?usp=sharing
这是我用来创建此代码的测试文档。其中没有敏感数据,这意味着我可以免费分享以解决我遇到的问题。
提前致谢!
答案 0 :(得分:0)
可能因为y = 7,它找到了匹配。在input == output
的阻止中,您忘了增加y
!