修改后的脚本..在手动运行时有效,setvalue(date)在按时运行触发时不起作用。需要另一个调整......想法好吗?
function getData() {
var queryString = Math.random();
var ss = SpreadsheetApp.openByUrl('spreadsheet URL');
var cellFunction = '=IMPORTHTML("stats URL' + queryString + '","table",1)';
var timezone = "GMT+1";
var timestamp_format = "EEE, MMM d '@' HH:mm"; // Timestamp Format.
var date = Utilities.formatDate(new Date(), timezone, timestamp_format);
Logger.log(ss.getName());
SpreadsheetApp.getActiveSheet().getRange('AH1').setValue(date);
SpreadsheetApp.getActiveSheet().getRange('AF1').setValue(cellFunction);
答案 0 :(得分:0)
在按时触发时没有“ActiveSheet”,因此它变得未定义,使用SpreadsheetApp中的这些方法之一来检索电子表格:
open(file)
电子表格打开与给定
openById(id)
电子表格打开具有给定ID的电子表格。
openByUrl(url)
电子表格使用给定的URL打开电子表格。
之后,使用以下方法之一获取工作表:
getSheetByName(name)
返回具有给定名称的工作表。
getSheets()[ indexOfTheSheet ]
返回具有给定0的索引