Google Sheets - Скрипт границы ячейки - PullRequest
0 голосов
/ 16 марта 2019

Мне нужна помощь с моим скриптом, чтобы добавить границу для ячеек, когда ячейка имеет значения.И этот скрипт будет работать на всех вкладках.Вот мой пример листа https://docs.google.com/spreadsheets/d/1Hq8HJ23c-FHETkoUJifgmrfE3-49PjkmCnmz87SDAKM/edit#gid=0

Вот мой пример сценария:

function onEdit(e) {
    if (e.source.getActiveSheet().getName() !== 'WEEKLY' || e.range.getA1Notation() !== ' ') return;
    checkRange(e.source.getActiveSheet())
}

function onEdit(e) {
    e.range.setBorder(false, false, false, false, false, false);
    if (e.value) e.range.setBorder(true, true, true, true, true, true).setBackground('white');
}

1 Ответ

0 голосов
/ 17 марта 2019

Этот работает для меня:

function onEdit(e) {
    e.range.setBorder(false, false, false, false, false, false);
    if (e.value) e.range.setBorder(true, true, true, true, true, true).setBackground('white');
}

Этот немного лучше, я думаю:

function onEdit(e) {
  e.range.setBorder(false, false, false, false, false, false);
  if(e.value && e.value.length>0) e.range.setBorder(true, true, true, true, true, true).setBackground('white');
}

Мне нравится этот еще лучше.Он даже работает на пасте с несколькими ячейками.

function onEdit(e) {
  var vA=e.range.getValues();
  for(var i=0;i<vA.length;i++) {
    for(var j=0;j<vA[i].length;j++) {
      e.range.getSheet().getRange(e.range.rowStart + i,e.range.columnStart + j).setBorder(false,false,false,false,false,false);
      if(vA[i][j] && vA[i][j].toString().length>0) {
        e.range.getSheet().getRange(e.range.rowStart + i,e.range.columnStart + j).setBorder(true,true,true,true,true,true).setBackground('white');
      }
    }
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...