繁体   English   中英

如何在 Javascript 中使用 Google 表格 API 获取 sheetId?

[英]How to get sheetId with Google Sheets API in Javascript?

嗨,如果您想在 Google 表格 API 中使用 sortRange,您需要一个 sheetId 作为 int 而不是字符串。 如何以工作表名称作为字符串开始

这非常适合对我的工作表进行排序。 但是 sheetId 我必须手动设置。 工作表编号:959061457

try {
    const request = {
        spreadsheetId: spreadsheetId,
        resource: {
            requests: [{
                sortRange: {
                    range: {
                        sheetId: 959061457,
                        startRowIndex: 1,
                        endRowIndex: 1000,
                        startColumnIndex: 0,
                        endColumnIndex: 6
                    },
                    sortSpecs: [{
                        sortOrder: 'DESCENDING',
                        dimensionIndex: 2
                    }]
                }
            }],
        },
        auth: client,
    };

    await sheets.spreadsheets.batchUpdate(request)
} catch (error) {
    console.log(error)
}

是否可以从某些 api 中获取 sheetId 作为数字? 它在 URL 中,但遗憾的是 batchUpdate、clear 或 append 在响应中没有它作为 int

我有电子表格 ID 和表名作为 sting。

它适用于https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/get

sheetname 是工作表的标题,为字符串

//Get sheetId by name
try {
    const request = {
        spreadsheetId: spreadsheetId,
        ranges: [sheetname],
        includeGridData: false,  
        auth: client,
    };

    res = await sheets.spreadsheets.get(request)
} catch (error) {
    console.log("Error get sheetId")
}

console.log(res.data.sheets[0].properties.sheetId)

您可以使用getSheetid方法。 这会将工作表的 id 作为字符串返回:

var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];

Logger.log(sheet.getSheetId());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM