Google apps script 脚本在所有页面上都工作了,并且只在一张页面上突然停止工作
我已经为提交表单时带有偏移量的谷歌表单编写了脚本。 共有2张表格,其中包含2个相关的Gforms 以前,以下脚本在两个工作表上都运行良好。 突然,脚本只在一张纸上工作。我尝试在我想要的活动工作表上手动启动脚本(工作表已激活),但脚本未运行。但是,脚本在另一个工作表上运行良好 总而言之: 脚本未运行(手动也不使用Gforms提交偏移量):sheetname“DemandeIntervention F-TEC-052” 脚本正在运行(手动或使用Gforms提交偏移量):sheetname“F-QUA-052” 以下是脚本:Google apps script 脚本在所有页面上都工作了,并且只在一张页面上突然停止工作,google-apps-script,google-sheets,google-forms,Google Apps Script,Google Sheets,Google Forms,我已经为提交表单时带有偏移量的谷歌表单编写了脚本。 共有2张表格,其中包含2个相关的Gforms 以前,以下脚本在两个工作表上都运行良好。 突然,脚本只在一张纸上工作。我尝试在我想要的活动工作表上手动启动脚本(工作表已激活),但脚本未运行。但是,脚本在另一个工作表上运行良好 总而言之: 脚本未运行(手动也不使用Gforms提交偏移量):sheetname“DemandeIntervention F-TEC-052” 脚本正在运行(手动或使用Gforms提交偏移量):sheetname“F-QUA
function CopyFormatting() {
//Déclaration des variables
var SS = SpreadsheetApp.getActiveSheet(); //Sheet of forms response
var LastRow = SS.getLastRow(); //last row of sheet (n)
var RefRow = SS.getRange('3:3'); //Row n°3 considered as reference
//Copy formatting to last row from reference row
RefRow.copyTo(SS.getRange(LastRow,1), {formatOnly: true});
}
请你帮我在两张纸上运行脚本好吗?
谢谢您的两张工作表之间的区别在于非工作表在单元格B104
中有一个值。
因此SS.getLastRow()代码>检索104
作为工作表的最后一行,因此单元格A104
是在每次脚本执行期间要格式化的单元格
您可以通过删除最后一个表单响应行下方的所有行来避免此问题。
如果文本iB104
对您来说非常重要,那么您必须通过其他方法替换getLastRow()
,例如……要进行故障排除,您可以替换SpreadsheetApp.getActiveSheet()
通过SpreadsheetApp.getSheetByName(“在此处粘贴工作表名称”)
手动运行代码,查看是否出现任何错误。否则,如果你有gmail地址的话,我可以和你分享你的工作表,以了解你的工作表有什么问题。我已替换为以下内容var SS=SpreadsheetApp.getSheetByName('DemandeIntervention F-TEC-052')//表单响应表
和编译错误类型错误:SpreadsheetApp.getSheetByName不是一个函数(ligne 5,fichier“IncrementDI”)。stackoverflow的良好实践是提供对表单的公共访问(在删除所有敏感信息或通过伪值替换它之后!),这样其他用户也可以看到它,以防他们想帮助您。@ziganotschka请在下文中查找Gsheet的副本。很遗憾,由于缺乏权限,我仍然无法打开电子表格。谢谢您的支持。我自己也刚刚发现了我的错误。Gsheet中有很多空单元格,脚本被认为是文档底部的最后一行。没错!对于将来的故障排除,您可以执行Logger.log(SS.getLastRow();
将实际的最后一行与预期的行进行比较。