IMPORTRANGE 포함 SpreadSheet A, B, C 등 SpreadSheet 1에서 데이터를 추출하기 위한 액세스를 요청합니다(그림 1). 예:
으아아아스프레드시트 A에서 접근 권한을 제거(권한 철회)하고 스프레드시트 1에서 데이터를 추출하고 싶습니다. (그림 2) 전자표 1에서 스프레드시트 A에 부여된 권한을 철회하려면 그림 1에 허용된 접근 권한을 철회합니다. 데이터 추출
실제로는 200개 이상의 스프레드시트가 1개(실제로는 2개)의 데이터베이스 스프레드시트에 연결되어 있기 때문에 이것은 단순한 예일 뿐입니다. 그래서 권한을 취소하고 싶습니다. 하나의 스프레드시트에 액세스할 수 있는 스프레드시트 수는 몇 번이나 제 양식에서 이 제한에 여러 번 도달했습니다내 코드의 일부를 이해하는 데 도움이 되는 실제 스프레드시트 사진, 스크립트는 액세스를 요청하는 동일한 스프레드시트에서 실행됩니다
틀릴 수도 있지만 한때 효과가 있었던 오래된 스크립트가 있습니다
으아아아
하지만 이제 오류가 표시됩니다TypeError: targetFile.getPermissions is not a function
으아아아
통과했지만 작동하지 않음이 경우 편집기가 어떻게 작동하는지 정확히 알지 못하고 검색해도 관련 질문과 해결 방법을 찾을 수 없습니다
저는 소유자이자 유일한 사용자입니다. 확실하지는 않지만 사용자가 아닌 파일과 관련된 문제입니다. 도움을 주셔서 감사합니다. 감사합니다
P粉9767371012024-03-31 17:12:27
당신의 목표는 다음과 같다고 생각합니다.
IMPORTRANGE
기능이 포함된 Google 스프레드시트가 있습니다. IMPORTRANGE
에 대한 여러 승인을 취소하려고 합니다. 스프레드시트 승인을 IMPORTRANGE
직접 취소하는 방법을 확인해 보세요. 아쉽게도 방법을 찾을 수 없습니다. 그러나 우리는 엔드포인트를 사용할 때 인증 프로세스가 스크립트로 실행될 수 있다는 것을 이미 알고 있습니다. Ref 귀하의 경우에는 이것이 해결 방법이 될 수 있을 것 같습니다. 이 해결 방법의 흐름은 다음과 같습니다.
IMPORTRANGE
, 취소하려는 스프레드시트는 제외됩니다. 원하는 특정 스프레드시트를 취소하여 Google 스프레드시트를 얻으려면 이 절차를 따르세요.
그러나 이 해결 방법에서는 원본 스프레드시트가 복사되었기 때문에 스프레드시트 ID가 원본 ID와 다릅니다. 따라서 이것이 실제 상황에서 유용할지는 잘 모르겠습니다. 그래서 저는 이 해결 방법을 제안하고 있습니다.
위 과정을 샘플 스크립트에 반영하면 다음과 같이 됩니다.
다음 스크립트를 원본 스프레드시트의 스크립트 편집기에 복사하여 붙여넣고 spreadsheetIdsOfdeletePermission
설정한 후 스크립트를 저장하세요.
Utilities.sleep 的循环中使用 UrlFetchApp.fetch
而不是 UrlFetchApp.fetchAll
에