簡體   English   中英

Apps 腳本在文檔中制作表格 - 無法設置列寬(子索引錯誤)

[英]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.

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