我如何(或可以)使用Google Apps脚本修改文档中表格的边框?

时间:2016-06-12 13:42:43

标签: google-apps-script google-docs

有没有办法使用Google Apps脚本修改文档表格中单个单元格的边框? TableCell类参考文档(here)没有任何似乎允许这样做的方法。 This issue似乎表明没有办法,但我想我会问,因为我对GAS很陌生并且还不知道我的方式。

2 个答案:

答案 0 :(得分:4)

您链接的问题描述了事物的当前状态。使用setAttributes方法更改边框颜色和宽度应该,因为supported attributes的列表包括BORDER_COLOR和BORDER_WIDTH。因此,这是一个应用程序脚本错误,这些属性无效,在修复之前,我们无法以编程方式操作这些边界。

这是一个演示脚本(类似于链接问题线程中发布的脚本,虽然我在阅读此问题之前写了这个):

function tableBorder() {  
  var body = DocumentApp.getActiveDocument().getBody();
  var table = body.appendTable([['aaa', 'bbb'], ['ccc', 'ddd']]);
  var cell = table.getCell(1, 1);
  var style = {};
  style[DocumentApp.Attribute.BORDER_COLOR] = '#ff0000';
  style[DocumentApp.Attribute.BORDER_WIDTH] = 5; 
  style[DocumentApp.Attribute.BOLD] = true;
  cell.setAttributes(style);
}

添加了一个表,并且" ddd"的内容是粗体,但脚本的颜色和宽度都没有改变。

答案 1 :(得分:1)

如果您真的需要以编程方式执行此操作,您可以在常规 Google 文档编辑器中创建一个带有所需边框的表格,然后使用 Google Apps 脚本从同一文档或不同文档复制它。然后您可以编辑新表格的内容。

//copy first table in other doc
table_copy = other_doc.getBody().getTables()[0].copy();
//paste into this doc
this_doc.getBody().appendTable(table_copy);