我正在尝试为我的Google电子表格制作一个脚本。
我想要的是脚本检查一个单元格中的单元格是否为空,如果不是,我希望它将该数据传输到另一个单元格的单元格中。每当我尝试这个时,它一直说“不能调用方法”getRange()“未定义。”
这就是我到目前为止所做的一切:
function timesheets(){
var ss = SpreadsheetApp.openById("1iL2Didv_YOLpTad5WdR3kZSjLOLTSQk_yV-gQhh4RXs");
if("ss!C2" != ""){
var Tasks = ss.getRange("C2").getValue();
}
}
我正在尝试创建一个新功能,而不是使用Google表格上的功能。我是否必须包含两个电子表格的名称?
答案 0 :(得分:1)
您正在访问电子表格,您需要先进入工作表级别。
我建议您在尝试从一个电子表格到另一个电子表格之前,让脚本在同一个电子表格中工作。
function timesheets(){
var ss = SpreadsheetApp.openById("1iL2Didv_YOLpTad5WdR3kZSjLOLTSQk_yV-gQhh4RXs");
var sheet = ss.getActiveSheet();
if("sheet!C2" != ""){
var Tasks = sheet.getRange("C2").getValue();
}
}
我正在尝试创建一个新函数而不是使用函数 Google表格。我是否必须包括两者的名称 电子表格?
包含其中的代码(目标)的电子表格需要知道它正在查找数据(表格)的工作表的ID。 如果要将值写入(目标)电子表格,则需要为其写一个变量来写入;
var sheetTarger = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
我创建了两个电子表格。
在一个名为“目标”的地方,我放置了以下代码
function timesheets(){
var ss = SpreadsheetApp.openById("*********************");
var sheet = ss.getActiveSheet();
if("sheet!C2" != ""){
var Tasks = sheet.getRange("C2").getValue();
}
var sheetTargert = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
sheetTargert.getRange("C2").setValue(Tasks);
}
我用来自来源的ID替换了“ ***************** ”。
在脚本编辑器中,我运行了函数timesheets()
值“hello”出现在目标细胞C2
中在脚本编辑器中,我去了
查看>执行成绩单
这产生了以下
[14-08-13 15:28:09:405 BST] Starting execution
[14-08-13 15:28:09:787 BST] SpreadsheetApp.openById([**************]) [0.366 seconds]
[14-08-13 15:28:09:891 BST] Spreadsheet.getActiveSheet() [0 seconds]
[14-08-13 15:28:09:975 BST] Sheet.getRange([C2]) [0.083 seconds]
[14-08-13 15:28:10:058 BST] Range.getValue() [0.082 seconds]
[14-08-13 15:28:10:058 BST] SpreadsheetApp.getActiveSpreadsheet() [0 seconds]
[14-08-13 15:28:10:139 BST] Spreadsheet.getActiveSheet() [0.08 seconds]
[14-08-13 15:28:10:139 BST] Sheet.getRange([10, 10]) [0 seconds]
[14-08-13 15:28:10:140 BST] Range.setValue([hello]) [0 seconds]
[14-08-13 15:28:10:386 BST] Sheet.getRange([C2]) [0.245 seconds]
[14-08-13 15:28:10:387 BST] Range.setValue([hello]) [0 seconds]
[14-08-13 15:28:10:559 BST] Execution succeeded [0.967 seconds total runtime]