假设您有一个带有第一张空白幻灯片(没有表格)的演示文稿。从空白开始很有用,因为我们不必记住确切的数据行数。然后我们应该创建一个包含两列的新表,并用导入的电子表格数据填充它。
我们可以通过电子表格和幻灯片容器中的谷歌脚本来完成。我选择了具有已知电子表格 ID 的幻灯片容器:
function addTable() {
var ssId = '-- spreadsheet ID here --';
var values = SpreadsheetApp.openById(ssId).getSheetByName('Test').getRange('A1:C3').getValues();
var table = SlidesApp.getActivePresentation().getSlides()[0].insertTable(values.length, 2);
for (var i in values) {
table.getRow(i).getCell(0).getText().appendText(values[i][0]);
table.getRow(i).getCell(1).getText().appendText(values[i][2]);
}
}
表格是处理电子表格数据的最简单的占位符,这个基本代码示例就是为它准备的。
您为占位符(形状)建议了不太明显的变体,例如这里:
考虑到占位符的排列以及它们的索引值,我们可以通过这个函数调用用导入的数据填充它们:
function importData() {
var ssId = '-- spreadsheet ID --';
var values = SpreadsheetApp.openById(ssId).getSheetByName('Tabellenblatt2').getRange('A1:C4').getValues();
var slide = SlidesApp.getActivePresentation().getSlides()[0];
var shapes = slide.getShapes();
for (var i in values) {
shapes[i].getText().setText(values[i][0]);
shapes[parseInt(i) + 4].getText().setText(values[i][2]);
}
}