javascript - Google 脚本编辑器:适用于除 3 个特定工作表之外的所有工作表
问题描述
目前,此代码仅应用于名为“名称”的工作表,我希望应用于除 3 张工作表(模板、摘要和计数)之外的所有工作表
代码摘要:如果单元格 A5 中的值(很快将更改为单元格范围)大于或等于 15,则发送电子邮件。
function EqualValue() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Name");
var value = sheet.getRange("A5").getValue();
if(value >= "15") sendEmail(value)
};
function sendEmail(value){
var recipient="Tester@test.com";
var subject=" test subject " +value;
var body="The Value is "+value;
MailApp.sendEmail(recipient, subject, body);
};
我不确定如何最好地做到这一点。
提前致谢
解决方案
要排除某些 Google 工作表选项卡并仅包含其他选项卡,您可以将要排除的工作表选项卡名称放入数组中。
获取电子表格中的所有工作表选项卡,然后遍历它们,检查每个名称。如果要检查的工作表选项卡的名称在要排除的工作表选项卡名称列表中,则不要执行任何操作。
function EqualValue() {
var allSheetTabs,i,L,thisSheet,thisSheetName,sheetsToExclude,value;
sheetsToExclude = ['Template','Summary','Count'];
var ss = SpreadsheetApp.getActiveSpreadsheet();
allSheetTabs = ss.getSheets();
L = allSheetTabs.length;
for (i=0;i<L;i++) {
thisSheet = allSheetTabs[i];
thisSheetName = thisSheet.getName();
//continue to loop if this sheet is one to exclude
if (sheetsToExclude.indexOf(thisSheetName) !== -1) {continue;}
value = thisSheet.getRange("A5").getValue();
if(value >= "15") sendEmail(value)
}
推荐阅读
- asp.net - 选择列表时的引导模式弹出问题已关闭?
- java - Glide 4.7.1 监听器不适用于 onResourceReady 方法和异常监听器
- python - 使用 python 和 lxml 访问重复的特定 xml 元素
- node.js - 尝试在发布路线上发表评论时出错
- apache-spark - Hive 外部表无法查看分区 Parquet 文件
- uwp - Windows 商店发布 Change App 图标
- android - 无法在 Firebase 中注册
- python-3.x - 我在“根”窗口中使用了网格管理器,我想在“顶层”窗口中使用包管理器。但它显示错误
- google-fabric - Slack 集成:在崩溃报告中包含用户信息
- tfs - Azure VM 上的 TFS 构建代理非常慢