Google表格API v4以获取工作表中的所有工作表名称

时间:2016-08-24 16:11:36

标签: javascript google-sheets-api

我正在使用https://developers.google.com/sheets/quickstart/js

的快速入门部分中提供的javascript代码

function listMajors() {
      	gapi.client.sheets.spreadsheets.values.get({
          spreadsheetId: '1b05r8p74UzLh_Hk8119stG8yEoU6Utsr1L238BwssWU',
          range: 'Class Data!A2:E',
        }).then(function(response) {
          var range = response.result;
          if (range.values.length > 0) {
            appendPre('Name, Major:');
            for (i = 0; i < range.values.length; i++) {
              var row = range.values[i];
              // Print columns A and E, which correspond to indices 0 and 4.
              appendPre(row[0] + ', ' + row[4]);
            }
          } else {
            appendPre('No data found.');
          }
        }, function(response) {
          appendPre('Error: ' + response.result.error.message);
        });
      }

给我指定范围内的数据:Class Data!A2:E。

我现在要列出电子表格中可用的所有工作表(如:数据类)。请帮忙。

3 个答案:

答案 0 :(得分:1)

    gapi.client.sheets.spreadsheets.get({
        spreadsheetId: SPREADSHEET_ID
    }).then(function(response) {
        console.log(response.result.sheets)
    }, function(response) {
        console.log('Error: ' + response.result.error.message);
    });

答案 1 :(得分:1)

我找到了。这应该工作。我正在使用C#。 javascript应该几乎相同。 有关详细信息:spreadsheet get method information.

var ssRequest = service.Spreadsheets.Get(sheetId);
Spreadsheet ss = ssRequest.Execute();
List<string> sheetList = new List<string>();

foreach(Sheet sheet in ss.Sheets)
{
    sheetList.Add(sheet.Properties.Title);
}

答案 2 :(得分:-1)

尝试使用:

getSheets() 获取此电子表格中的所有工作表。

// The code below will log the name of the second sheet
var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets();
if (sheets.length > 1) {
Logger.log(sheets[1].getName());
}