如何从 google 应用程序脚本中排除某些 sheets/tabs?
How do I exclude certain sheets/tabs from google app script?
我正在使用此代码:function onEdit(e) { e.source.getActiveSheet().getRange('K2').setValue(new Date()).setNumberFormat("dd/mm/yyyy hh:mm:ss") }
添加每个 sheet/tab 为 'last updated' 的日期和时间,但是,我想从中排除两个选项卡:“产品特性”和“客户列表概述”-如何我可以调整脚本以便不包括这两个 tabs/sheets 吗? (我完全是新手,所以需要确切地知道要更改什么以及将它放在哪里,谢谢!)
考虑先获取活动 sheet 的名称,然后添加一个条件来检查活动 sheet 的名称是否与 不同您想要排除代码的那些(即在特定单元格中设置日期)。
示例(N.B:未测试):
function onEdit(e) {
/** Name of the active sheet. */
var sheetName = "";
/** Active sheet. */
var activeSheet = null;
// Get active sheet:
activeSheet = e.source.getActiveSheet();
// Get active sheet's name:
sheetName = activeSheet.getSheetName();
// Apply this code to those active sheets where their name is different from these sheets:
if (sheetName != "Product Features" && sheetName != "Client List Overview") {
e.source.getActiveSheet().getRange('K2').setValue(new Date()).setNumberFormat("dd/mm/yyyy hh:mm:ss")
}
}
我相信这就是您所需要的:
function onEdit(e) {
var activeSheet = SpreadsheetApp.getActive();
activeSheet.getRange('K2').setValue(new Date()).setNumberFormat("dd/mm/yyyy hh:mm:ss")
}
尝试
function onEdit(e) {
var excl = ['Sheet1', 'Sheet2'];//excluded sheets
var activeSheet = e.source.getActiveSheet();
if (!~excl.indexOf(activeSheet.getSheetName())) {
activeSheet.getRange('K2').setValue(new Date()).setNumberFormat("dd/mm/yyyy hh:mm:ss")
}
}
我正在使用此代码:function onEdit(e) { e.source.getActiveSheet().getRange('K2').setValue(new Date()).setNumberFormat("dd/mm/yyyy hh:mm:ss") }
添加每个 sheet/tab 为 'last updated' 的日期和时间,但是,我想从中排除两个选项卡:“产品特性”和“客户列表概述”-如何我可以调整脚本以便不包括这两个 tabs/sheets 吗? (我完全是新手,所以需要确切地知道要更改什么以及将它放在哪里,谢谢!)
考虑先获取活动 sheet 的名称,然后添加一个条件来检查活动 sheet 的名称是否与 不同您想要排除代码的那些(即在特定单元格中设置日期)。
示例(N.B:未测试):
function onEdit(e) {
/** Name of the active sheet. */
var sheetName = "";
/** Active sheet. */
var activeSheet = null;
// Get active sheet:
activeSheet = e.source.getActiveSheet();
// Get active sheet's name:
sheetName = activeSheet.getSheetName();
// Apply this code to those active sheets where their name is different from these sheets:
if (sheetName != "Product Features" && sheetName != "Client List Overview") {
e.source.getActiveSheet().getRange('K2').setValue(new Date()).setNumberFormat("dd/mm/yyyy hh:mm:ss")
}
}
我相信这就是您所需要的:
function onEdit(e) {
var activeSheet = SpreadsheetApp.getActive();
activeSheet.getRange('K2').setValue(new Date()).setNumberFormat("dd/mm/yyyy hh:mm:ss")
}
尝试
function onEdit(e) {
var excl = ['Sheet1', 'Sheet2'];//excluded sheets
var activeSheet = e.source.getActiveSheet();
if (!~excl.indexOf(activeSheet.getSheetName())) {
activeSheet.getRange('K2').setValue(new Date()).setNumberFormat("dd/mm/yyyy hh:mm:ss")
}
}