Google Scripts: добавление таблицы листов в Google Doc - PullRequest
0 голосов
/ 03 февраля 2020

Я пытаюсь вставить диапазон данных из Google Sheet в Google Do c в виде таблицы. Я успешен, но он вставляет таблицу в самый конец Google Do c, и я не могу понять, как вставить ее в середину do c в указанном c месте. Я также не могу понять, как заставить его игнорировать пустые строки в диапазоне, чтобы он не вставлял таблицу в do c с пустыми строками. Любая помощь приветствуется!

Вот фрагмент моего кода:

var deviceName = sheet.getRange("C2").getValue();    
var parts = sheet.getRange("B14:C28").getValues();

body.replaceText("%DEVICENAME%", deviceName);
var table = body.appendTable(parts);

table.setColumnWidth(0, 200);
table.setColumnWidth(1, 200);

1 Ответ

1 голос
/ 03 февраля 2020

Вы должны выбрать реальный диапазон данных и использовать insertTable, а не добавляемый.

var deviceName = sheet.getRange("C2").getValue();    
var parts = sheet.getDataRange().getValues();
parts = removeBlanks(parts);

body.replaceText("%DEVICENAME%", deviceName);
var location = 2;
var table = body.insertTable(location, parts);

table.setColumnWidth(0, 200);
table.setColumnWidth(1, 200);

function removeBlanks (removeBlanks){
var result = [];
for (var i=0; i<removeBlanks.length;i++)
    {
    if (removeBlanks[i][0] == 0) continue;
    result.push(removeBlanks[i]);
    }
return result;
}

Поиграйте со значениями для местоположения, я не был уверен, где вы на самом деле хотите это с заданной информацией.

update: добавлена ​​функция для удаления пустых строк, если первая ячейка строки пуста.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...