Скрыть столбцы на одном листе в зависимости от того, установлен ли флажок на другом листе в ЛОЖЬ - PullRequest
1 голос
/ 15 февраля 2020

Я пытаюсь запустить сценарий в моей электронной таблице, который скрывает столбцы на одном листе в зависимости от того, поставлен ли флажок на другом листе.

Я создал приведенный ниже код, но, похоже, он не работает :

function onEdit(){
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet1 = SpreadsheetApp.getActive().getSheetByName('BALANCE SHEET');
  var sheet2 = SpreadsheetApp.getActive().getSheetByName('OVERVIEW')
  var cell = sheet2.getRange(7, 5);

  if(cell == "TRUE"){
    sheet1.hideColumns(21,2)};
  if(cell == "FALSE"){
    sheet1.showColumns(21,2)};
}

Галочка находится на листе ОБЗОР в ячейке E7, и я хочу, чтобы это скрыло столбцы V & W на БАЛАНСЕ.

Когда галочка установлена ​​в ИСТИНА, я хочу столбцы, которые будут отображаться, и когда флажок ЛОЖЬ, столбцы будут скрыты.

Может кто-нибудь помочь с этим, пожалуйста?

1 Ответ

3 голосов
/ 15 февраля 2020

Это работает:

Примечание: вы не можете запустить это из редактора скриптов, так как для этого требуется наличие объекта триггера onedit. У меня есть флажок «ОБЗОР! E7»;

function onEdit(e){
  //e.source.toast('Test');
  var sh=e.range.getSheet();
  if(sh.getName()!='OVERVIEW')return;
  if(e.range.columnStart==5 && e.range.rowStart==7) {
    //e.source.toast('Test1');
    var sheet1=e.source.getSheetByName('BALANCE SHEET');
    if(e.value=="TRUE"){sheet1.hideColumns(21,2)};
    if(e.value=="FALSE"){sheet1.showColumns(21,2)};
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...