根据Google Spreadsheets中的其他单元格禁用和启用单元格

时间:2017-08-10 14:12:49

标签: google-sheets google-spreadsheet-api

我的电子表格的第一列在每个单元格中都有下拉列表,其中包含选项"是"和"不"。

如果"是"如果选中,我想在同一行启用单元格,下一列使用另一个下拉列表,其中包含选项" red"和"蓝"。如果" no"如果选中,则下一个单元格应保持禁用状态。

到目前为止,我已经尝试过将自定义公式设置为单元格B3中的=if(B2="Yes", "red", "blue")的数据验证菜单,但它不起作用。

我该怎么做?

1 个答案:

答案 0 :(得分:0)

您可以使用onEdit和脚本执行此操作:

function onEdit(e) {
  var ss = SpreadsheetApp.getActiveSpreadsheet()
  var s=ss.getActiveSheet()
  var col=e.range.getColumn()
  var ro=e.range.getRow()
  var nota=e.range.getA1Notation()
  if(col==1){
  var val=e.range.getValue()
  if(val=="No"){
    s.getRange(ro,2,1,1).setDataValidation(null)
   }
      else{
      s.getRange(ro,2,1,1).clearContent()      
      var cell = s.getRange(ro,2,1,1);
      var rule =  
SpreadsheetApp.newDataValidation().requireValueInList(['Red', 'Blue']).build();
 cell.setDataValidation(rule);
      }}}

这是一个分享示例。复制并试一试。

https://docs.google.com/spreadsheets/d/1wHA1Rz9U9dr4n8DntLvZWPe4izck7xgi3ygUpx-uNmo/edit?usp=sharing