Ich weiß, dass Google Apps Script eine getSheetId () -Methode für die Sheet-Klasse hat, aber gibt es eine Möglichkeit, eine Tabelle innerhalb einer Tabelle durch Bezugnahme auf die ID auszuwählen?
Ich sehe nichts wie getSheetById () in der Spreadsheet Class-Dokumentation .
Sie können so etwas verwenden:
function getSheetById(id) {
return SpreadsheetApp.getActive().getSheets().filter(
function(s) {return s.getSheetId() === id;}
)[0];
}
var sheet = getSheetById(123456789);
Um dann die Blatt-ID zu finden, die für das aktive Blatt verwendet werden soll, führen Sie dieses aus und überprüfen Sie die Protokolle oder verwenden Sie den Debugger.
function getActiveSheetId(){
var id = SpreadsheetApp.getActiveSheet().getSheetId();
Logger.log(id.toString());
return id;
}
var sheetActive = SpreadsheetApp.openById("ID");
var sheet = sheetActive.getSheetByName("Name");
Suchen Sie in Ihrer URL nach dem Abfrageparameter #gid.
In Beispiel über gid = 910184575 können Sie etwa Folgendes tun:
function getSheetById_test(){
var sheet = getSheetById(910184575);
Logger.log(sheet.getName());
}
function getSheetById(gid){
for each (var sheet in SpreadsheetApp.getActive().getSheets()) {
if(sheet.getSheetId()==gid){
return sheet;
}
}
}