簡體   English   中英

Append 使用 Apps 腳本在 Google Docs 中選定表上的新行

[英]Append a New Row on selected Tables in Google Docs with Apps Script

我有一個有 4 個表的 Google 文檔,每個表包含:數字、日期、Session、姓名、Class 和部門的年份。

因此,每當提交任何新的谷歌表單時,它都會根據受訪者選擇的部門和日期更新並查找文檔和表格。 所以腳本已經能夠找到文檔並根據日期填寫表格,但問題是第二天表格上的箭頭 append 。 示例:被訪者選擇的日期是 05/02/2021,所以應該也是 05/02/2021 表的 append 吧? 而不是 2021 年 6 月 2 日。

Google Docs 表格(之前)

Google Docs 表格(新回復后)

function appendTable(){
    if (pilihan1 == 'Advokasi dan Kesejahteraan Mahasiswa (ADVOKESMA)'){
      var range = bodyJadwalAdvo.findText(screening);
      var searchElement = bodyJadwalAdvo.findElement(DocumentApp.ElementType.TABLE, range);
    } else if (pilihan1 == 'Pengembangan Sumber Daya Mahasiswa (PSDM)'){
      var range = bodyJadwalPsdm.findText(screening);
      var searchElement = bodyJadwalPsdm.findElement(DocumentApp.ElementType.TABLE, range);
    } else if (pilihan1 == 'Informasi dan Komunikasi (INFOKOM)'){
      var range = bodyJadwalInfokom.findText(screening);
      var searchElement = bodyJadwalInfokom.findElement(DocumentApp.ElementType.TABLE, range);
    } else if (pilihan1 == 'Sosial Masyarakat (SOSMA)'){
      var range = bodyJadwalSosma.findText(screening);
      var searchElement = bodyJadwalSosma.findElement(DocumentApp.ElementType.TABLE, range);
    } else if (pilihan1 == 'Bisnis'){
      var range = bodyJadwalSosma.findText(screening);
      var searchElement = bodyJadwalSosma.findElement(DocumentApp.ElementType.TABLE, range);
    }
    element = searchElement.getElement();
    table = element.asTable();
    var tr = table.appendTableRow();
    
    function replaceBodyJadwal(depart){
      if(screening == '05/02/2021'){
        depart.replaceText('{{TanggalA}}', screening);
        depart.replaceText('{{NamaLengkapA}}', namaLengkap);
        depart.replaceText('{{AngkatanA}}', angkatan);
        depart.replaceText('{{Pilihan2A}}', pilihan2);
        tr.appendTableCell(" ");
        tr.appendTableCell("{{TanggalA}}");
        tr.appendTableCell(" ");
        tr.appendTableCell("{{NamaLengkapA}}");
        tr.appendTableCell("{{AngkatanA}}");
        tr.appendTableCell("{{Pilihan2A}}");
      } else if (screening == '06/02/2021'){
        depart.replaceText('{{TanggalB}}', screening);
        depart.replaceText('{{NamaLengkapB}}', namaLengkap);
        depart.replaceText('{{AngkatanB}}', angkatan);
        depart.replaceText('{{Pilihan2B}}', pilihan2);
        tr.appendTableCell(" ");
        tr.appendTableCell("{{TanggalB}}");
        tr.appendTableCell(" ");
        tr.appendTableCell("{{NamaLengkapB}}");
        tr.appendTableCell("{{AngkatanB}}");
        tr.appendTableCell("{{Pilihan2B}}");
      }  else if (screening == '07/02/2021'){
        depart.replaceText('{{TanggalC}}', screening);
        depart.replaceText('{{NamaLengkapC}}', namaLengkap);
        depart.replaceText('{{AngkatanC}}', angkatan);
        depart.replaceText('{{Pilihan2C}}', pilihan2);
        tr.appendTableCell(" ");
        tr.appendTableCell("{{TanggalC}}");
        tr.appendTableCell(" ");
        tr.appendTableCell("{{NamaLengkapC}}");
        tr.appendTableCell("{{AngkatanC}}");
        tr.appendTableCell("{{Pilihan2C}}");
      }  else if (screening == '08/02/2021'){
        depart.replaceText('{{TanggalD}}', screening);
        depart.replaceText('{{NamaLengkapD}}', namaLengkap);
        depart.replaceText('{{AngkatanD}}', angkatan);
        depart.replaceText('{{Pilihan2D}}', pilihan2);
        tr.appendTableCell(" ");
        tr.appendTableCell("{{TanggalD}}");
        tr.appendTableCell(" ");
        tr.appendTableCell("{{NamaLengkapD}}");
        tr.appendTableCell("{{AngkatanD}}");
        tr.appendTableCell("{{Pilihan2D}}");
      }
    }
    if (pilihan1 == 'Advokasi dan Kesejahteraan Mahasiswa (ADVOKESMA)'){
      replaceBodyJadwal(bodyJadwalAdvo); 
    } else if (pilihan1 == 'Pengembangan Sumber Daya Mahasiswa (PSDM)'){
      replaceBodyJadwal(bodyJadwalPsdm);
    } else if (pilihan1 == 'Informasi dan Komunikasi (INFOKOM)'){
      replaceBodyJadwal(bodyJadwalInfokom);
    } else if (pilihan1 == 'Sosial Masyarakat (SOSMA)'){
      replaceBodyJadwal(bodyJadwalSosma);
    } else if (pilihan1 == 'Bisnis'){
      replaceBodyJadwal(bodyJadwalBisnis);
    } 
  }

解決了。

function cariTabel(bodyJadwalDepartemen){
      if(screening=='05/02/2021'){
        screeningJadwal=null;
        var range = null;
      } else {
          if(screening=='06/02/2021'){
            screeningJadwal='05/02/2021';
          } else if(screening=='07/02/2021'){
            screeningJadwal='06/02/2021';
          } else if(screening=='08/02/2021'){
            screeningJadwal='07/02/2021';
          }
          var range = bodyJadwalDepartemen.findText(screeningJadwal);
      }     
      searchElement = bodyJadwalDepartemen.findElement(DocumentApp.ElementType.TABLE, range);
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM