谷歌工作表单元格编辑时刷新或重新加载侧边栏

时间:2020-04-02 00:15:59

标签: javascript html google-apps-script google-sheets sidebar

我在Cell C4上有Google工作表和数据下拉菜单。我用几个输入字段制作了自定义边栏。我想通过下拉菜单选择Cell C4上的数据时刷新或重新加载侧栏。请告诉我您的好主意!

+++

value =来自C4。当用户更改C4的值时,我想自动刷新边栏或输入字段,以使用C4的当前值更新输入字段。

function showsidbar() {
  var html = HtmlService.createTemplateFromFile("main.html").evaluate();  //createHtmlOutputFromFile('Page')
 
   html.setTitle('입력창입니다!')
    //  .setWidth(300);
  SpreadsheetApp.getUi() // Or DocumentApp or SlidesApp or FormApp.
      .showSidebar(html);
}

function include(filename){
   return HtmlService.createHtmlOutputFromFile(filename).getContent();
}



function bb(){
  var mainsheet = "기본";
    var sheet = SpreadsheetApp.getActiveSpreadsheet();
  var targetSheet = sheet.getSheetByName(mainsheet);
  var value = targetSheet.getRange("N5").getValue();
   return value;;
   }

function Name(){
  var mainsheet = "기본";
    var sheet = SpreadsheetApp.getActiveSpreadsheet();
   var targetSheet = sheet.getSheetByName(mainsheet);
  var value = targetSheet.getRange("C4").getValue();
   return value;;
   }
  <html>
  <head>
  </head> 
  <body>
  <div style=" padding:10px; background-color:#ccebff">
   <form name="frm">
    <center><B>학생 정보</B> </center>
   
       
    <b>이름 </b>
    <input type="text" name="Name" ID="reginame" size="6" value=<?=Name()?>>
    
     <b>학번</b>
    <input type="text" name="Number" iD="reginum" size="4" value=<?=bb()?>>
   
    
    
    </form>
    </div>
    </body>
    </html>

1 个答案:

答案 0 :(得分:1)

  • 当单元格“ C4”的下拉列表更改时,您想使用编辑后的“ C4”值刷新边栏。
  • 您想通过修改脚本来实现。

如果我的理解正确,那么这个答案如何?请认为这只是几个可能的答案之一。

在这个答案中,我想建议使用可安装的OnEdit事件触发器。

修改后的脚本:

修改脚本后,请在脚本中添加以下功能。而且,please install the OnEdit event trigger to the function of inatalledOnEdit.

function inatalledOnEdit(e) {
  if (e.range.getA1Notation() == "C4") {
    showsidbar();
  }
}
  • 更改单元格“ C4”的下拉列表时,inatalledOnEdit的功能由可安装的OnEdit事件触发器运行。然后,运行showsidbar(),然后重新打开侧边栏,并由value=<?=Name()?>设置新值。

参考: