作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如果问题不是很明显,我对 Google Apps 脚本还很陌生。我正在尝试编写一个电子表格函数,该函数遍历工作簿中表单提交表的每一行,并根据第一个使用 for 循环的单元格的值更新第二个工作表/范围(在同一工作簿中)。但是,当我运行该函数时没有任何反应。
我很确定错误出在我定义相关范围的方式上,但我不是 100% 确定。这是我所写内容的修改版本:
function update() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var secondSheet = ss.getSheets()[1];
var submissionSheet = ss.getSheets()[0];
var secondRowEnd = secondSheet.getLastRow();
var submissionRowEnd = submissionSheet.getLastRow();
var secondColumnEnd = secondSheet.getLastColumn();
var submissionColumnEnd = submissionSheet.getLastColumn(); //used to define ranges dynamically
var secondRange = secondSheet.getValues();
var submissionRange = submissionSheet.getValues();
for(var i = 2; i <= submissionRowEnd; i++) {
var rock = secondRange.getCell(i, 1).getValue();
var paper = secondRange.getCell(i, 2).getValue();
var scissors = secondRange.getCell(i, 3).getValue();
var status = secondRange.getCell(i, 4).getValue();
var forStatus = secondRange.getCell(i, 5).getValue();
if (status === "Do X!") {
for(var j = 2; j <= submissionRowEnd; j++) {
var jrock = submissionRange.getCell(j, 1).getValue();
var jpaper = submissionRange.getCell(j, 2).getValue();
var jscissors = submissionRange.getCell(j, 3).getValue();
var jstatus = submissionRange.getCell(j, 4).getValue();
if (status === forStatus) {
jrock.setValue(rock);
jpaper.setValue(paper);
jscissors.setValue(scissors);
} else { /*do nothing*/ }
}
}
}
几个星期以来,我一直在关注这段代码的略有不同的版本,所以任何人和所有关注此代码的人都将不胜感激!
最佳答案
只需查看 Spreadsheet Service 的 Apps 脚本 API 引用.所有功能都记录在那里。以下是您需要的方法说明的链接:
getRange() 有多个实现。
关于javascript - getRange、getDataRange 和 getActiveRange 之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38461098/
如果问题不是很明显,我对 Google Apps 脚本还很陌生。我正在尝试编写一个电子表格函数,该函数遍历工作簿中表单提交表的每一行,并根据第一个使用 for 循环的单元格的值更新第二个工作表/范围(
似乎他们都做同样的事情,即在事件的“打开”工作表中返回选定的范围。我在这里缺少什么?是否存在需要使用 getSelection() 的情况? var sheet = SpreadsheetApp.ge
我是一名优秀的程序员,十分优秀!