[英]Apps Script making table in doc - Can't set column widths (Child index Error)
我已經構建了一些報價來生成銷售報價,我已經使用 Google 文檔模板成功地將所有項目添加到報價中。 我遇到的一個問題是在嘗試設置表格樣式時,當我添加了 setColumnWidth 時,我不斷收到此錯誤
該表是從多維數組填充的,如果 setColumnWidth 不存在則有效
var developerTableArray = quoteItem.developerItems;
var devloperTableSection = body.findText("{devloperTable}");
var devloperElement = devloperTableSection.getElement();
var childIndexDevloper = body.getChildIndex(devloperElement.getParent());
body.getChild(childIndexDevloper).asText().setText('');
body.insertTable(childIndexDevloper,developerTableArray).setColumnWidth(1, 60);
這是我用來添加表格的代碼,我是不是做錯了什么? 任何幫助將不勝感激!
根據文檔setColumnWidth
有兩個參數:第一個是columnIndex
- 列的索引。
索引1
指的是表的第二列。 但是,您的表似乎包含少於 2 列,這是引發錯誤的原因。
我建議你看看developerTableArray
的內容,看看問題出在哪里。
下面是一個示例,說明如何為插入的新表格設置列寬以代替某些占位符。
function addTable() {
try {
let data = [[1,2,3],[4,5,6],[7,8,9]];
let doc = DocumentApp.getActiveDocument();
let body = doc.getBody();
let element = body.findText("{devloperTable}").getElement()
let parent = element.getParent();
let index = body.getChildIndex(parent);
let table = body.insertTable(index,data);
table.setColumnWidth(1,60);
element.removeFromParent();
}
catch(err) {
console.log(err)
}
}
參考
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.