如何使 Google Sheet 下拉值影响其他下拉

我有 4 个带有 TRUE 或 FALSE 选项的下拉菜单。我希望制作一个公式,以便如果其中一个为真,其余的将自动设置为假。


因此,在这种情况下,由于“次日”为 TRUE,因此“sameday”、“sd 11am”、“rush”和“P2P”为“假”。如果我将 Sameday 更改为 TRUE,我希望 Next Day 自动更改为 False。那可能吗?


芜湖不芜
浏览 105回答 1
1回答

慕容708150

解释:你不能通过使用谷歌表格公式来实现。您显然需要一个onEdit()触发器函数,因此可以利用Google Apps Script。一旦列表中的单元格['F2','G2','H2','I2','J2']被编辑,脚本将检查编辑了哪个单元格以及新值是TRUE还是FALSE。如果值为 ,TRUE则它将其他单元格的值更改为FALSE。如果新选择的值是FALSE那么它不会做任何事情。解决方案:请按照说明 (gif) 进行操作。它们非常简单。这是代码片段:function onEdit(e) {  const cellR = e.range.getA1Notation()  const as = e.source.getActiveSheet();  const sheetName = "Sheet1";  const cells = ['F2','G2','H2','I2','J2'];    cells.forEach(cell=>{  var otherCells = cells.filter(val=>val!=cell);  if(as.getName() == sheetName && cellR ==cell && as.getRange(cell).getDisplayValue() == "TRUE"){  otherCells.forEach(o_cells=>{as.getRange(o_cells).setValue("FALSE")})}}  );   }请将工作表名称(sheetName)调整为您自己工作表的名称。说明/示范:请按照以下说明设置和使用它:点击Tools => Script editor ,将代码片段复制并粘贴到 code.gs 文件中,最后点击保存按钮。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript