Google表格-单元格边框脚本

时间:2019-03-16 18:12:14

标签: google-apps-script google-sheets

我想为我的脚本提供一些帮助,以便在单元格具有值时在单元格上添加边框。该脚本将运行到所有选项卡。这是我的样本表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 :(得分:0)

这个对我有用:

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');
      }
    }
  }
}