Google apps script Google Sheets脚本挂起在getRange上
更新后: 您好,最后问题似乎与getvalue()本身无关,而是与源有关,源是由IMPORTRANGE公式导入的范围。这个公式有问题。我真的不知道为什么,但我认为这与电子表格的大小有关。我没能核实这一点。我试图下载这个文件,但没有成功。最后,我建立了一个新的电子表格。现在看来一切正常。但我还是想知道下一次发生了什么,以了解如何避免它。 无论如何,谢谢你的帮助 原职: 我在GAS中遇到getRange函数问题。这是一个非常简单的代码,在出现问题(我不知道是什么)然后开始失败之前,它一直正常工作。我只是想从一个单元格中收集一个日期值,然后用它来创建一封电子邮件 我试图通过Logger和vars一步一步地调试代码,但我很难弄清楚当我试图从相应的monocell范围中获取值时会发生什么 以下是我目前正在尝试的代码:Google apps script Google Sheets脚本挂起在getRange上,google-apps-script,Google Apps Script,更新后: 您好,最后问题似乎与getvalue()本身无关,而是与源有关,源是由IMPORTRANGE公式导入的范围。这个公式有问题。我真的不知道为什么,但我认为这与电子表格的大小有关。我没能核实这一点。我试图下载这个文件,但没有成功。最后,我建立了一个新的电子表格。现在看来一切正常。但我还是想知道下一次发生了什么,以了解如何避免它。 无论如何,谢谢你的帮助 原职: 我在GAS中遇到getRange函数问题。这是一个非常简单的代码,在出现问题(我不知道是什么)然后开始失败之前,它一直正常工作。我
// Retreive email receipts from Form submitted choice
function EmailUpdatefromForm()
{
var spreadsheet = SpreadsheetApp.openById("1ImOXXXXXxSDz8AqjMWtuSPtg7xMejqPpHQ9vwDnY");
var form = FormApp.getActiveForm();
var formResponses = form.getResponses();
var formlength = formResponses.length;
Logger.log(formlength);
var formResponse = formResponses[formResponses.length-1];
var itemResponses = formResponse.getItemResponses();
var itemlength = itemResponses.length;
Logger.log(itemlength);
for (var j = 0; j < itemResponses.length; j++) {
var itemResponse = itemResponses[j];
var emailto = itemResponse.getResponse();
Logger.log(itemResponse+" - "+emailto);
}
var email = (emailto? emailto[0] : "xxxxxxxxxxs@xxxxxxx.com");
var sheet = spreadsheet.getSheetByName("report");
var log1 = spreadsheet.getId(); //--> THIS CHECKPOINT WORKS AND GETS THE PROPER SS ID
var log2 = sheet.getSheetId(); //--> THIS CHECKPOINT WORKS AND GETS THE PROPER SHEET ID
var log3 = sheet.getRange(2, 1) //--> THIS CHECKPOINT WORKS ALTHOUGH I CANNOT SEE IF IT IS ACTUALLY POINTING TO THE PROPER CELL
var log4 = sheet.getRange(2, 1).getValues(); //--> THIS CHECKPOINT GETS STUCK\\
var updatedate = sheet.getRange(2,1).getValue(); //--> THIS IS WHAT I REALLY WANT TO DO
var PDFdate = Utilities.formatDate(updatedate, "GMT+1", "yyyyMMdd")
}
//从表单提交选项中检索电子邮件收据
函数EmailUpdatefromForm()
{
var电子表格=SpreadsheetApp.openById(“1ImOXXXXXxSDz8AqjMWtuSPtg7xMejqPpHQ9vwDnY”);
var form=FormApp.getActiveForm();
var formResponses=form.getResponses();
var formlength=formResponses.length;
Logger.log(formlength);
var formResponse=formResponses[formResponses.length-1];
var itemResponses=formResponse.getItemResponses();
var itemlength=itemResponses.length;
Logger.log(itemlength);
对于(var j=0;j此检查点工作并获取正确的SS ID
var log2=sheet.getSheetId();//-->此检查点工作并获取正确的工作表ID
var log3=sheet.getRange(2,1)/-->此检查点有效,尽管我看不出它是否实际指向正确的单元格
var log4=sheet.getRange(2,1).getValues();//-->此检查点被卡住\\
var updatedate=sheet.getRange(2,1).getValue();//-->这就是我真正想要做的
var PDFdate=Utilities.formatDate(updatedate,“GMT+1”,“yyyyMMdd”)
}
我发现有几篇文章提到了getRange的问题,但我没有发现任何回应真正澄清这里发生了什么以及如何扭转局面
提前感谢您的支持
函数EmailUpdatefromForm(){
var电子表格=SpreadsheetApp.openById(“1ImOXXXXXxSDz8AqjMWtuSPtg7xMejqPpHQ9vwDnY”);
var form=FormApp.getActiveForm();
var formResponses=form.getResponses();
var formlength=formResponses.length;
Logger.log(formlength);
var formResponse=formResponses[formResponses.length-1];
var itemResponses=formResponse.getItemResponses();
var itemlength=itemResponses.length;
Logger.log(itemlength);
对于(var j=0;j
函数EmailUpdatefromForm(){
var电子表格=SpreadsheetApp.openById(“1ImOXXXXXxSDz8AqjMWtuSPtg7xMejqPpHQ9vwDnY”);
var form=FormApp.getActiveForm();
var formResponses=form.getResponses();
var formlength=formResponses.length;
Logger.log(formlength);
var formResponse=formResponses[formResponses.length-1];
var itemResponses=formResponse.getItemResponses();
var itemlength=itemResponses.length;
Logger.log(itemlength);
对于(var j=0;j
您是否尝试将其调用到其他单元格,如果调用失败,是否可以显示经过消毒的工作表版本?还有,它有多大?谢谢。后更新。问题似乎消失了,最后不是getvalue()问题。那么这个问题不再影响您了吗?就我创建了一个全新的电子表格而言,它还没有以前的版本那么大,答案是不,问题不再影响我了。谢谢。你试过把它打到另一个手机上吗?如果也失败了,你能给我看一张经过消毒的床单吗?还有,它有多大?谢谢。后更新。问题似乎消失了,最后不是getvalue()问题。那么这个问题不再影响您了吗?就我创建了一个全新的电子表格而言,它还没有以前的版本那么大,答案是不,问题不再影响我了。非常感谢。
function EmailUpdatefromForm() {
var spreadsheet = SpreadsheetApp.openById("1ImOXXXXXxSDz8AqjMWtuSPtg7xMejqPpHQ9vwDnY");
var form = FormApp.getActiveForm();
var formResponses = form.getResponses();
var formlength = formResponses.length;
Logger.log(formlength);
var formResponse = formResponses[formResponses.length-1];
var itemResponses = formResponse.getItemResponses();
var itemlength = itemResponses.length;
Logger.log(itemlength);
for (var j = 0; j < itemResponses.length; j++) {
var itemResponse = itemResponses[j];
var emailto = itemResponse.getResponse();
Logger.log(itemResponse+" - "+emailto);
}
var email = (emailto? emailto[0] : "xxxxxxxxxxs@xxxxxxx.com");
var sheet = spreadsheet.getSheetByName("report");
var log1 = spreadsheet.getId();
var log2 = sheet.getSheetId();
var log3 = sheet.getRange(2, 1);
var log4 = log3.getValue();
var updatedate = log4;
var PDFdate = Utilities.formatDate(updatedate, "GMT+1", "yyyyMMdd")
}