我想創建一個腳本,將採取谷歌文檔模板文件,進行復制,從一排我的電子表格替換信息的某些文字,附加另一頁上替換文本,從下一行替換信息的文本在電子表格上,追加另一頁等複製文檔的頁面,每個頁面
這是我到目前爲止有:
// Global variables
var templateDocID = ScriptProperties.getProperty("backRxRequestDocID");
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var activeSheetName = sheet.getName();
var user = Session.getUser().getEmail();
function requestGen3() {
var physName = ["doc john", "doc evan", "doc jane"];
var physAddr1 = ["fake st.", "faker st.", "fakest st."];
var physAddr2 = ["ste 100", "", "ste 209"];
var physCity = ["SLC", "Provo", "Orem"];
var physState = ["UT", "AZ", "NV"];
var physZip = ["84049", "84044", "84601"];
var physPhone = ["8015555555", "7206666666", "4803333333"];
var ptName = ["ed", "sue", "izzy"];
var ptDOB = ["12/10/1979", "1/1/2001", "45/94/4561"];
// Get document template, copy it as a new temp doc, and save the Doc’s id
var docID = DocsList.getFileById(templateDocID).makeCopy().getId();
var doc = DocumentApp.openById(docID);
var body = doc.getActiveSection();
var pars = doc.getParagraphs();
var bodyCopy = body;
for (var i = 0; i < physName.length; ++i) {
// Replace place holder keys,
body.replaceText('%PHYS_NAME%', physName[i]);
body.replaceText('%PHYS_ADDR1%', physAddr1[i]);
body.replaceText('%PHYS_ADDR2%', physAddr2[i]);
body.replaceText('%PHYS_CITY%', physCity[i]);
body.replaceText('%PHYS_STATE%', physState[i]);
body.replaceText('%PHYS_ZIP%', physZip[i]);
body.replaceText('%PHYS_PHONE%', physPhone[i]);
body.replaceText('%PT_NAME%', ptName[i]);
body.replaceText('%PT_DOB%', ptDOB[i]);
doc.appendPageBreak();
for (var j = 0; j < pars.length; ++j) {
doc.appendParagraph(pars[j].copy());
}
}
// Save and close the document
doc.saveAndClose();
}
我通過教程接着從表格中讀取,但我似乎無法使getRowsData()
和getObjects()
正常工作。我上面的腳本正確地創建文檔,但沒有插入第二組信息到第二頁和第三組進入第三頁,等等
謝謝。這非常適合添加頁面,很簡單,但我是新手。關於讓getRowsData()函數讀取我的電子表格的行以代替我手動輸入的數組來替換文檔的文本的任何提示。再次,任何幫助非常感謝。 –