我想知道是否可以使用应用脚本将电子表格表格嵌入到Google文档中。
我知道您可以通过将表格复制/粘贴到google doc中来完成此操作,但是有没有办法使用apps脚本来完成此操作?
编辑
使用@Cooper和@Alberto Molina的答案,我想出了以下代码,它导入并插入了一个表
var sheet = SpreadSheetApp.openById("").getSheets()[0];
var docBody = DocumentApp.openById("").getBody();
var values = sheet.getDataRange().getValues();
var elem = docBody.findText("").getElement();
var parent = elem.getParent();
var idx = docBody.getChildIndex(parent);
docBody.insertTable(++idx, values);
此代码像这样插入“原始”表 Image
我希望对原始表进行更改以影响google文档中的表。所以基本上我想这样插入Image
我目前的想法是:
docBody.insertTable(++idx, values).setLinkUrl(**???**);
但是我不知道将URL设置为什么
答案 0 :(得分:0)
尝试以下代码:
function table(){
var ss = SpreadSheetApp.getCurrentSheet();
var doc = DocumentApp.create('Sample Document'); // Or find one by name/ID
var body = doc.getBody();
var dataYouWant = ss.getRange("A1:D4").getValues(); // stores a 2D array with the values
table = body.appendTable(dataYouWant); // pastes table in doc
table.getRow(0).editAsText().setBold(true); // Example of how to edit table, this sets the header bold.
}
由于您没有提供任何现有代码或细节,所以这是一个非常广泛的解决方案。但本质上,您需要获取值(以2D数组形式),然后使用appendTable()
将其粘贴到文档主体中。
答案 1 :(得分:0)
尝试一下:
这进入Documents脚本编辑器中的Code.gs,并打开另一个电子表格以获取其数据。
const welcome = (agent) => { agent.add(`Welcome to my Khoon hazir. It is an online blood bank. How may i help you?`);
agent.add(new Card({
title: `Khoon hazir`,
imageUrl: 'https://images.pexels.com/photos/355296/pexels-photo-355296.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500',
text: `This is an online Blood bank, aim to save lives`,
buttonText: 'Need Blood',
buttonUrl: 'https://www.facebook.com/khoon.hazir/'
}));
}
SpreadSheet中数据的图像:
文档中表格的图像: