Find the type of Google Sheet using Google Sheets API/Apps Script

  Kiến thức lập trình

I have many sheets in a Google Sheet, I want to check the type of sheet via Google Apps Script

I know a chart sheet as well as a timeline sheet is a “OBJECT”
How to differentiate between the types?

Hence I could add a key isTimeline true|false

enter image description here
enter image description here

 function getAllSheetInfo() {
  var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
  var sheets = spreadsheet.getSheets();
  var sheetInfo = {};
  
  sheets.forEach(function(sheet) {
    var sheetName = sheet.getName();
    var sheetId = sheet.getSheetId();
    var isHidden = sheet.isSheetHidden();
    var sheetType = sheet.getType()
    var isGrid = (sheetType === SpreadsheetApp.SheetType.GRID);
    var isChart = (sheetType === SpreadsheetApp.SheetType.OBJECT);
    var isDataSource = (sheetType === SpreadsheetApp.SheetType.DATASOURCE);
    
    console.log(sheet.getCharts()?.[0]?.getChartId())

    sheetInfo[sheetName] = {
      id: sheetId,
      isHidden: isHidden,
      isGrid: isGrid,
      isChart: isChart,
      isDataSource: isDataSource
    };
  });
  
  console.log(JSON.stringify(sheetInfo))
  return JSON.stringify(sheetInfo);
}

LEAVE A COMMENT