插入评论 - GoogleSpreadsheets
问题描述:
我正在寻找在脚本运行后将注释插入到某个单元格中。 我正在使用的脚本是插入日历条目 - 但我只希望它做一次。要做到这一点,我会得到脚本来检查是否在单元格中输入了注释/注释。从理论上讲,这应该很容易,但我很难让它选择正确的细胞......任何人都可以帮忙吗?我的代码如下。插入评论 - GoogleSpreadsheets
我已经在与var = date对应的单元格中进行注释。 如果有人能给我指点,我会很感激!
干杯, 皮特
function CalendarInputIVNShortlist() {`
`var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 2; // First row of data to process
var numRows = 2; // Number of rows to process
var dataRange = sheet.getRange(startRow, 1, numRows, 26); //What data will be used
var data = dataRange.getValues();
var cal = CalendarApp.getDefaultCalendar(); //Gets the correct calendar
for (i in data) {
var row = data[i];
var title = row[1]; // Column with Title
var desc = row[15]; // Column with Next Steps
var date = row[5]; //Column with Date
var invite = row[2] //Column with PDC Chairs & IVN Owner
var sent = row[12] //Check Sent
sheet.getRange(data[i], 5).setNote(Sent)
cal.createAllDayEvent(title, new Date(date), {description:desc,guests:invite});
var Comment = dataRange(date).setNote("Inputted")
答
这里有一个问题:
sheet.getRange(data[i], 5)
你使用的第一个参数, data[i]
,是一个数组(你已经在前几行等同于row
)。您正在查找的getRange()
方法差异需要两个Numbers作为参数。如果你的意图是一记添加到该行目前在你的循环引用的5列,然后你想:
sheet.getRange(i+startRow, 5).setNote(sent);
与特定行的另一个问题是Sent
;我假设你想引用你设置的变量等于row[12]
,就在上面,它的名字中有一个小字母''。
接下来,有什么东西错在这里:
var Comment = dataRange(date).setNote("Inputted")
什么是dataRange()
?除非它在你的脚本另一个函数,返回相关的row[5]
内容的Range对象,我会想你打算这样:
sheet.getRange(i+startRow, 5).setNote("Inputted");
答
sheet.getRange()
需要2个整数作为参数:行号和列号。
在你的代码中,你试图将一个数组(数据[i])作为行nuber ...这是行不通的。
由于从STARTROW和,数组计数是0索引我建议你试试这样:
sheet.getRange(startRow+i, 5).setNote(Sent)
没关系,你读代码更深入地比我; - )...抱歉在这个上太肤浅了! –
嗨Mogsdad,道歉,我一直在度假。 这工作把它放到我的第一行,但它不工作时,它应该进一步下去(我已经将numRows更改为3,表示它会去我的前两行数据,而不是第一)。 有什么建议,你可以给? – user2087338
Mogsdad,一直玩这个,也注意到它会插入注释10行,即在第2,12,22行,当我改变numRow。在代码中找不到任何合理的解释让它跳过10! – user2087338