Как мне показать скрытую строку, основанную на значении ячейки? - PullRequest
0 голосов
/ 16 января 2020

Я создал лист с раскрывающимся списком со значениями «Выбрать один», «Pu sh», «Потянуть» в ячейке B23. Я бы хотел, чтобы строка 24 была скрыта по умолчанию. После выбора значения «Извлечь» из раскрывающегося списка я бы хотел, чтобы строка 24 была невидимой.

Существует ли способ отобразить строку 24, если выделение в ячейке B23 = Извлечь? enter image description here

Ответы [ 2 ]

1 голос
/ 16 января 2020

Требуется:

  • Показать строку 24, если в раскрывающемся списке B23 установлено значение Pull.
  • Скрыть строку 24 в любом другом случае.

В этом случае вы можете скопировать этот простой onEdit триггер в скрипт , связанный с вашей электронной таблицей (лист с данными в этом примере называется Sheet1, пожалуйста, измените это соответственно, если это не так):

function onEdit(e) {
  var ss = SpreadsheetApp.getActive();
  var sheet = ss.getSheetByName("Sheet1"); // Please change accordingly
  var dropdown = sheet.getRange("B23").getValue();
  var row = 24;
  if (dropdown == "Pull") sheet.showRows(row);
  else sheet.hideRows(row);
}

Как видите, нет необходимости использовать for l oop, который замедлит выполнение (особенно учитывая, что это будет выполняться каждый раз). время редактирования файла).

Чтобы строка 24 была скрыта или отображена соответствующим образом при первом открытии файла, к функции можно прикрепить триггер onOpen, например:

function onOpen(e) {
  onEdit(e)
}

Ссылка:

Надеюсь, это поможет.

0 голосов
/ 16 января 2020

используйте этот скрипт:

function onEdit(e) 
{
  var ss=SpreadsheetApp.getActiveSpreadsheet();
  var sh=ss.getSheetByName("Sheet1");
  var rg=sh.getDataRange();
  var vA=rg.getValues();
  var xx=sh.getRange("B23").getValue();
  for(var i=0;i<vA.length;i++)
  {
    var row=i+1;
    switch(xx)
    {
      case 'Pull':
        if(row=24){sh.showRows(row);}
        break;
      case 'Select One:':
        if(row=24){sh.hideRows(row);}
        break;
      case 'Push':
        if(row=24){sh.hideRows(row);}
        break;
      default:
    }
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...