如何解决Google 表格:在列中输入特定值时弹出消息
这是我第一次在 Apps Script for Google Sheets 中创建一些东西,我有点卡住/不知所措。在我所做的阅读中,我认为我正在尝试的是相当基本的。我只是没有找到解决方案,所以我需要推动...
需要: 我有一张用于跟踪设备的表,该设备已被检出并返回到中心区域。 该工作表具有多个布局相同的页面。
在每一页上,我都有一列,可以从下拉列表中选择 (3) 个不同的选项。 输入、输出和不可用
对于 (3) 个条目选项中的每一个,我希望在条目更改时显示弹出消息。
因此,在 F2:F100 范围内,如果条目从“IN”更改为“OUT”,我希望弹出窗口显示“清除右侧的所有字段”的消息。和一个“确定”按钮。
我找到了很多示例,可以在更改任何字段或打开工作表时弹出。我坚持将这些弹出窗口限制为仅选择字段/范围/页面
谢谢大家的帮助。
解决方法
解决方案
您可以参考下面这个通过 onEdit 触发器运行的示例脚本,如果该单元格的值更改为电子表格文件中任何工作表上的“OUT”:
function onEdit() {
var ss = SpreadsheetApp.getActive();
//Check if selected cell is in column F (or col #6) was changed to "OUT"
if(ss.getActiveCell().getColumn() == 6 & ss.getRange(ss.getActiveCell().getA1Notation()).getValue() == "OUT"){
SpreadsheetApp.getUi().alert('Clear all fields to the right.');
}
}
如果您需要添加更多条件,例如您只想将脚本运行到特定的工作表名称,您可以在以 ss.getSheetName() == '[Name of the sheet]'
符号分隔的 if 条件上添加 &
,如下面的示例所示:
if(ss.getSheetName() == 'Sheet2' & ss.getActiveCell().getColumn() == 6 & ss.getRange(ss.getActiveCell().getA1Notation()).getValue() == "OUT"){
SpreadsheetApp.getUi().alert('Clear all fields to the right.');
}
示例结果:
如果通过下拉选项将列 F 上的选定单元格从 IN
更改为 OUT
:
弹出消息“清除右侧的所有字段。”将显示在工作表上
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。