首页 > 解决方案 > 如何将列表项放入谷歌应用程序脚本(文档)中的表格中?

问题描述

所以有很多方法可以解决这个问题,我不明白 google 的 API 是什么意思获取子索引,但我认为在我问之前不尝试是不公平的。

所以这就是我所做的


var line1 = 'n/a'; 
var line2 = 'n/a';
var line3 = 'n/a';
var line4 = 'n/a';
var line5 = ' ';  
var line6 = ' ';    
var line7 = ' ';    

//------------------------Init Functions----------------------------------------------------------//
  for(i = 0; i<8; i++) {
  body.appendParagraph(' ');
  }





//------------------------Secondary Init Functions------------------------------------------------//
  var pArray = body.getParagraphs(); //gets Paragraph
// |Parent/Child

  /*if (pArray[0].getText() != ' ') {        //Mainly to keep with tradition but unnecessary
    line1 = pArray[0].getText();
  }*/

  if (pArray[1].getText() != ' ') {
    line2 = pArray[1].getText();
  }

  if (pArray[2].getText() != ' ') {
    line3 = pArray[2].getText();
  }

  if (pArray[3].getText() != ' ') {
    line4 = pArray[3].getText();
  }  

    if (pArray[4].getText() != ' ') {    
    line5 = pArray[4].getText();
  }
//----------------Re-Assignment--------------------------------------//

 body.clear();
 body.appendListItem(line4).setNestingLevel(1).setIndentStart(72).setGlyphType(DocumentApp.GlyphType.SQUARE_BULLET);
 var nLine4 = body.getListItems()[0].getText();
  body.appendParagraph("Filler");
 body.clear();
 var tblData = [['red', nLine4]];
 body.appendTable(tblData);

我试图将修改后的文本作为列表显示,以便将其显示为列表。这可能是一种浪费的复杂方式,它甚至不起作用

所以我的问题是是否有更简单的方法来做到这一点?或者有没有办法做到这一点?

标签: google-apps-script

解决方案


您可以根据需要使用.appendListItem()或将 ListItem 添加到TableCell中。在下面的示例中,我正在创建一个新表并将一个列表项附加到第一行的第一个单元格中。.insertListItem()

function insertListItemIntoTableCell() {
  var doc = DocumentApp.getActiveDocument();
  var body = doc.getBody();
  var table = body.appendTable();
  var row = table.appendTableRow();
  var cell = row.appendTableCell();
  var item = cell.appendListItem("A list item");
  item.setNestingLevel(1).setIndentStart(72).setGlyphType(DocumentApp.GlyphType.SQUARE_BULLET);
}

推荐阅读