Google表格API v4 - 在上方插入行(不在下面)

时间:2017-03-24 06:49:05

标签: javascript google-sheets-api

有没有人有幸获得insertDimension请求在上面插入现有数据?我下面的代码只在底部插入一行,我找不到任何关于如何说 where 我想要添加行的文档...新API有很多问题..

function insertRow() {
    return new Promise((resolve, reject) => {
        var sheets = google.sheets('v4');

        var options = {
            auth: auth,
            spreadsheetId: spreadsheetId,
            resource: {
                requests: [{
                    insertDimension: {
                        range: {
                            sheetId: 1769404692,
                            dimension: "ROWS",
                            startIndex: 1,
                            endIndex: 2
                        },
                        inheritBefore: true
                    }
                }],
            }
        }

        sheets.spreadsheets.batchUpdate(options, (err, res) => {
            if (err) {
                reject(err);
            } else {
                resolve(res);
            }
        });
    });
}

此代码的工作原理是它确实插入了一行,而不是我想要它的位置。

2 个答案:

答案 0 :(得分:0)

我面临同样的问题。我已经找到了两个解决方案,也许它适合你的。

第一个是选择一行来对范围进行排序,追加新值并再次排序以规范化顺序。我正在使用sortRange

第二个是使用MoveDimensionRequestInsertDimensionRequest

我建议您查看spreadsheet collection,在那里您可以操纵工作表的大部分方面。

答案 1 :(得分:0)

聚会晚了一点,但是我发现这个问题正在寻找类似的问题。

如果要将startIndex设置在某一行的上方,只需将其设置为一行。如果您希望将其插入第1行上方,请设置startIndex: 0。但是,如果这样做,还必须设置inheritBefore: false,因为索引0之前没有要继承的行。