簡體   English   中英

谷歌文檔合並在谷歌表中的特定單元格的編輯

[英]Google doc merge on edit of specific cell in google sheet

我在下面的代碼中找到了以下代碼,該代碼使用列標題值作為關鍵字替換谷歌文檔中的文本占位符,從而在谷歌文檔和谷歌工作表中的數據之間執行合並。

// Set up the docs and the spreadsheet access

 var copyFile = DriveApp.getFileById(TEMPLATE_ID).makeCopy(),
     copyId = copyFile.getId(),
     copyDoc = DocumentApp.openById(copyId),
     copyBody = copyDoc.getActiveSection(),
     activeSheet = SpreadsheetApp.getActiveSheet(),
     numberOfColumns = activeSheet.getLastColumn(),
     activeRowIndex = activeSheet.getActiveRange().getRowIndex(),
     activeRow = activeSheet.getRange(activeRowIndex, 1, 1, 
     numberOfColumns).getValues(),
     headerRow = activeSheet.getRange(1, 1, 1, numberOfColumns).getValues(),
     columnIndex = 0

// Replace the keys with the spreadsheet values

    for (;columnIndex < headerRow[0].length; columnIndex++) {

    copyBody.replaceText('%' + headerRow[0][columnIndex] + '%', 
                     activeRow[0][columnIndex]) 

此刻,此代碼必須手動觸發,並將根據光標選擇的活動行的位置執行功能。

另外,我想在編輯一行中的特定單元格時觸發該函數,並參考同一行中的值執行合並。 我過去曾使用以下代碼,但沒有在以上上下文中使用過。

function onEditcustom(e) {

   if(e.range.getColumn() == 1 && e.value == "APPROVED" && 
   e.range.getSheet().getName() == "Sheet 1"){

任何幫助將不勝感激!

謝謝!

您想在Google表格中使用可安裝的觸發器onEdit 您必須使用可安裝的版本才能訪問DocumentApp服務。

您還應該注意, onEdit只能在工作表中使用,而不能在文檔中使用。

https://developers.google.com/apps-script/guides/triggers/installable#google_apps_triggers

暫無
暫無

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

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