首页 > 解决方案 > 如何在谷歌表格中输入或输入数据后锁定或保护行

问题描述

如何在 Google 表格中输入或输入数据后锁定或保护一行。F列是一个“时间戳”,它一直是空白的。当 F 不是空白时,我需要保护该行。

标签: google-apps-scriptgoogle-sheetslockingrowdata-entry

解决方案


保护 F 列不为空白的行

function onEdit() {
  var sh=e.range.getSheet();
  if(sh.getName()!='TheNameOfTheSheetYouWantThisToWorkIn')return;//change to whatever sheet your using
  if(e.range.columnStart==6 && !e.range.isBlank()) {
    sh.getRange(e.range.rowStart,1,1,sh.getLastColumn()).protect();
  }
}

阅读有关简单触发器的信息

了解有关 onEdit 事件对象的更多信息

请求的集成:

function onEdit(e)
{
  var sh = e.range.getSheet();
  if(sh.getName()=='Activity Log' && e.range.columnStart==2 && e.range.rowStart>1) {
     applyFirstLevelValidation(e.value,e.range.rowStart);
  }
  if(sh.getName()=='Activity Log' && e.range.columnStart==3 && e.range.rowStart>1) {
    applySecondLevelValidation(e.value,e.range.rowStart);
  }
  if(sh.getName()=="SheetName" && e.range.columnStart==6 && !e.range.isBlank()) { //you need to modify the SheetName
    sh.getRange(e.range.rowStart,1,1,sh.getLastColumn()).protect(); 
  } 

}

推荐阅读