Google Apps Script에서 시트 ID를 가져올 수 없습니다.
Aug 26 2020
나는 다음을 사용하여 [this answer] [1]에서 활성 시트 ID를 얻으려고했습니다.
function getActiveSheetId(){
var id = SpreadsheetApp.getActiveSheet().getSheetId();
Logger.log(id.toString());
return id;
}
하지만 내 로거는 0을 기록합니다. 같은 것을 얻을 수있는 다른 방법이 있습니까? 다른 시트 파일에서이 시트를 읽고 작업을 수행하고 싶습니다.
[1] : https://stackoverflow.com/questions/26682269/get-google-sheet-by-id#:~:text=filter(%20function(s)%20%7B,Logs%20or%20use%20the % 20 디버거.
답변
2 Marios Aug 26 2020 at 16:57
코드에는 문제가 없습니다.
이 함수를 첫 번째 시트에 적용하면 0을 반환합니다. 이는 페이지의 URL에서 볼 수 있듯이 올바른 시트 ID입니다.
동일한 기능을 다른 시트에 적용하면 올바른 시트 ID를 다시 얻습니다.
ID로 시트 를 얻으려면 다음 게시물을 참조하십시오.
ID로 Google 스프레드 시트를 받으시겠습니까?
예:
function getSheetById(id) { return SpreadsheetApp.getActive().getSheets().filter( function(s) {return s.getSheetId() === id;} )[0]; }
예를 들어 첫 번째 시트 (id = 0)를 얻으려면 다음을 수행하십시오.
var sheet = getSheetById(0);
그런 다음 sheet평소와 같이 모든 시트 작업을 여기에 적용 할 수 있습니다 .