uzyskiwać dostęp do chronionych zakresów i arkuszy oraz modyfikować ich ustawienia; Zakres chroniony może chronić zarówno statyczny
zakresu komórek lub nazwany zakres. Chroniony arkusz może zawierać niechronione regiony. Dla:
arkuszy kalkulacyjnych utworzonych w starszej wersji Arkuszy Google, należy użyć funkcji
lekcję.
PageProtection
// Protect range A1:B10, then remove all other users from the list of editors. var ss = SpreadsheetApp.getActive(); var range = ss.getRange('A1:B10'); var protection = range.protect().setDescription('Sample protected range'); // Ensure the current user is an editor before removing others. Otherwise, if the user's edit // permission comes from a group, the script throws an exception upon removing the group. var me = Session.getEffectiveUser(); protection.addEditor(me); protection.removeEditors(protection.getEditors()); if (protection.canDomainEdit()) { protection.setDomainEdit(false); }
// Remove all range protections in the spreadsheet that the user has permission to edit. var ss = SpreadsheetApp.getActive(); var protections = ss.getProtections(SpreadsheetApp.ProtectionType.RANGE); for (var i = 0; i < protections.length; i++) { var protection = protections[i]; if (protection.canEdit()) { protection.remove(); } }
// Protect the active sheet, then remove all other users from the list of editors. var sheet = SpreadsheetApp.getActiveSheet(); var protection = sheet.protect().setDescription('Sample protected sheet'); // Ensure the current user is an editor before removing others. Otherwise, if the user's edit // permission comes from a group, the script throws an exception upon removing the group. var me = Session.getEffectiveUser(); protection.addEditor(me); protection.removeEditors(protection.getEditors()); if (protection.canDomainEdit()) { protection.setDomainEdit(false); }
Metody
Metoda | Zwracany typ | Krótki opis |
---|---|---|
addEditor(emailAddress) | Protection | Dodaje danego użytkownika do listy edytorów chronionego arkusza lub zakresu. |
addEditor(user) | Protection | Dodaje danego użytkownika do listy edytorów chronionego arkusza lub zakresu. |
addEditors(emailAddresses) | Protection | Dodaje podaną tablicę użytkowników do listy edytorów chronionego arkusza lub zakresu. |
addTargetAudience(audienceId) | Protection | Dodaje podaną grupę odbiorców jako edytującego zakres chroniony. |
canDomainEdit() | Boolean | Określa, czy wszyscy użytkownicy w domenie, do której należy arkusz kalkulacyjny, mają uprawnienia do edycji zakresu chronionego lub arkusza. |
canEdit() | Boolean | Określa, czy użytkownik ma uprawnienia do edytowania zakresu chronionego lub arkusza. |
getDescription() | String | Pobiera opis chronionego zakresu lub arkusza. |
getEditors() | User[] | Pobiera listę edytorów chronionego zakresu lub arkusza. |
getProtectionType() | ProtectionType | Pobiera typ obszaru chronionego: RANGE lub SHEET . |
getRange() | Range | Pobiera chroniony zakres. |
getRangeName() | String | Pobiera nazwę zakresu chronionego, jeśli jest on powiązany z nazwanym zakresem. |
getTargetAudiences() | TargetAudience[] | Zwraca identyfikatory grup odbiorców, którzy mogą edytować zakres chroniony. |
getUnprotectedRanges() | Range[] | Pobiera tablicę niechronionych zakresów w chronionym arkuszu. |
isWarningOnly() | Boolean | Określa, czy obszar chroniony jest oparty na ostrzeżeniach i ochrony danych. |
remove() | void | Wyłącza ochronę zakresu lub arkusza. |
removeEditor(emailAddress) | Protection | Usuwa danego użytkownika z listy edytorów chronionego arkusza lub zakresu. |
removeEditor(user) | Protection | Usuwa danego użytkownika z listy edytorów chronionego arkusza lub zakresu. |
removeEditors(emailAddresses) | Protection | Usuwa daną tablicę użytkowników z listy edytorów chronionego arkusza lub zakresu. |
removeTargetAudience(audienceId) | Protection | Usuwa podaną grupę odbiorców z uprawnieniami do edytowania zakresu chronionego. |
setDescription(description) | Protection | Określa opis chronionego zakresu lub arkusza. |
setDomainEdit(editable) | Protection | Określa, czy wszyscy użytkownicy w domenie, w której znajduje się arkusz kalkulacyjny, mają uprawnienia do edytowania zakres chroniony lub arkusz. |
setNamedRange(namedRange) | Protection | Przypisuje zakres chroniony z istniejącym zakresem nazwanym. |
setRange(range) | Protection | Dostosowuje chroniony zakres. |
setRangeName(rangeName) | Protection | Powiąże zakres chroniony z istniejącym zakresem nazwanym. |
setUnprotectedRanges(ranges) | Protection | Wyłącza ochronę danej tablicy zakresów w chronionym arkuszu. |
setWarningOnly(warningOnly) | Protection | Określa, czy ten zakres chroniony ma korzystać z ustawień „opartych na ostrzeżenia” i ochrony danych. |
Szczegółowa dokumentacja
addEditor(emailAddress)
Dodaje danego użytkownika do listy edytorów chronionego arkusza lub zakresu. Ta metoda
nie przyznawać automatycznie użytkownikowi uprawnień do edycji samego arkusza kalkulacyjnego; aby to zrobić w
dodanie, wywołaj Spreadsheet.addEditor(emailAddress)
.
// Opens the spreadsheet file by its URL. If you created your script from within // a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet() instead. // TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit'); // Adds an editor to the spreadsheet using an email address. // TODO(developer): Replace the email address with a valid email. ss.addEditor('cloudysanfrancisco@gmail.com'); // Gets a sheet by its name and protects it. const sheet = ss.getSheetByName('Sheet1'); const sampleProtectedSheet = sheet.protect(); // Adds an editor of the protected sheet using an email address. // TODO(developer): Replace the email address with a valid email. sampleProtectedSheet.addEditor('cloudysanfrancisco@gmail.com'); // Gets the editors of the protected sheet. const editors = sampleProtectedSheet.getEditors(); // Logs the editors' email addresses to the console. for (const editor of editors) { console.log(editor.getEmail()); }
Parametry
Nazwa | Typ | Opis |
---|---|---|
emailAddress | String | Adres e-mail użytkownika, którego chcesz dodać. |
Powrót
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby tworzenia łańcuchów.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
addEditor(user)
Dodaje danego użytkownika do listy edytorów chronionego arkusza lub zakresu. Ta metoda
nie przyznawać automatycznie użytkownikowi uprawnień do edycji samego arkusza kalkulacyjnego; aby to zrobić w
dodanie, wywołaj Spreadsheet.addEditor(user)
.
// Opens the spreadsheet file by its URL. If you created your script from within // a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet() instead. // TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit'); // Gets a sheet by its name. const sheet = ss.getSheetByName('Sheet1'); // Protects the sheet. const sampleProtectedSheet = sheet.protect(); // Adds the active user as an editor of the protected sheet. sampleProtectedSheet.addEditor(Session.getActiveUser()); // Gets the editors of the protected sheet. const editors = sampleProtectedSheet.getEditors(); // Logs the editors' email addresses to the console. for (const editor of editors) { console.log(editor.getEmail()); }
Parametry
Nazwa | Typ | Opis |
---|---|---|
user | User | Reprezentacja użytkownika, który ma zostać dodany. |
Powrót
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby tworzenia łańcuchów.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
addEditors(emailAddresses)
Dodaje podaną tablicę użytkowników do listy edytorów chronionego arkusza lub zakresu. Ten
nie powoduje automatycznego przyznania użytkownikowi uprawnień do edycji samego arkusza kalkulacyjnego. do zrobienia
który dodatkowo wywoła funkcję Spreadsheet.addEditors(emailAddresses)
.
// Opens the spreadsheet file by its URL. If you created your script from within // a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet() instead. // TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit'); // Gets a sheet by its name. const sheet = ss.getSheetByName('Sheet1'); // Creates variables for the email addresses to add as editors. // TODO(developer): Replace the email addresses with valid ones. const TEST_EMAIL_1 = 'cloudysanfrancisco@gmail.com'; const TEST_EMAIL_2 = 'baklavainthebalkans@gmail.com'; // Protects the sheet. const sampleProtectedSheet = sheet.protect(); // Adds editors to the protected sheet using the email address variables. sampleProtectedSheet.addEditors([TEST_EMAIL_1, TEST_EMAIL_2]); // Gets the editors of the protected sheet. const editors = sampleProtectedSheet.getEditors(); // Logs the editors' email addresses to the console. for (const editor of editors) { console.log(editor.getEmail()); }
Parametry
Nazwa | Typ | Opis |
---|---|---|
emailAddresses | String[] | Tablica adresów e-mail użytkowników do dodania. |
Powrót
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby tworzenia łańcuchów.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
addTargetAudience(audienceId)
Dodaje podaną grupę odbiorców jako edytującego zakres chroniony.
Parametry
Nazwa | Typ | Opis |
---|---|---|
audienceId | String | Identyfikator grupy odbiorców do dodania. |
Powrót
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby tworzenia łańcuchów.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
canDomainEdit()
Określa, czy wszyscy użytkownicy w domenie, do której należy arkusz kalkulacyjny, mają uprawnienia do edycji zakresu chronionego lub arkusza. Zgłasza wyjątek, jeśli użytkownik nie ma uprawnień do edycji zakresu chronionego lub arkusza.
// Opens the spreadsheet file by its URL. If you created your script from within // a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet() instead. // TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit'); // Gets a sheet by its name. const sheet = ss.getSheetByName('Sheet1'); // Protects the sheet. const sampleProtectedSheet = sheet.protect(); // Logs whether domain users have permission to edit the protected sheet to the console. console.log(sampleProtectedSheet.canDomainEdit());
Powrót
Boolean
– true
, jeśli wszyscy użytkownicy w domenie, do której należy arkusz kalkulacyjny, mają uprawnienia do:
edytować zakres chroniony lub arkusz; false
.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
canEdit()
Określa, czy użytkownik ma uprawnienia do edytowania zakresu chronionego lub arkusza. właściciel arkusza kalkulacyjnego może zawsze edytować chronione zakresy i arkusze.
// Remove all range protections in the spreadsheet that the user has permission to edit. var ss = SpreadsheetApp.getActive(); var protections = ss.getProtections(SpreadsheetApp.ProtectionType.RANGE); for (var i = 0; i < protections.length; i++) { var protection = protections[i]; if (protection.canEdit()) { protection.remove(); } }
Powrót
Boolean
– true
, jeśli użytkownik ma uprawnienia do edytowania zakresu chronionego lub arkusza; false
, jeśli nie
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getDescription()
Pobiera opis chronionego zakresu lub arkusza. Jeśli nie ustawiono opisu, ta metoda zwraca pusty ciąg.
// Opens the spreadsheet file by its URL. If you created your script from within // a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet() instead. // TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit'); // Gets a sheet by its name. const sheet = ss.getSheetByName('Sheet1'); // Protects the sheet and sets the description. const sampleProtectedSheet = sheet.protect().setDescription('Sample sheet is protected'); // Gets the description of the protected sheet and logs it to the console. const sampleProtectedSheetDescription = sampleProtectedSheet.getDescription(); console.log(sampleProtectedSheetDescription);
Powrót
String
– opis chronionego zakresu lub arkusza albo pusty ciąg, jeśli nie ma opisu
jest ustawiony.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getEditors()
Pobiera listę edytorów chronionego zakresu lub arkusza. Zgłasza wyjątek, jeśli użytkownik to zrobi nie masz uprawnień do edytowania chronionego zakresu lub arkusza.
// Protect the active sheet, then remove all other users from the list of editors. var sheet = SpreadsheetApp.getActiveSheet(); var protection = sheet.protect().setDescription('Sample protected sheet'); // Ensure the current user is an editor before removing others. Otherwise, if the user's edit // permission comes from a group, the script throws an exception upon removing the group. var me = Session.getEffectiveUser(); protection.addEditor(me); protection.removeEditors(protection.getEditors()); if (protection.canDomainEdit()) { protection.setDomainEdit(false); }
Powrót
User[]
– tablica użytkowników z uprawnieniami do edytowania zakresu chronionego lub arkusza
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getProtectionType()
Pobiera typ obszaru chronionego: RANGE
lub SHEET
.
// Opens the spreadsheet file by its URL. If you created your script from within // a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet() instead. // TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit'); // Gets a sheet by its name. const sheet = ss.getSheetByName('Sheet1'); // Protects the sheet. const sampleProtectedSheet = sheet.protect(); // Gets the type of the protected area. const protectionType = sampleProtectedSheet.getProtectionType(); // Logs 'SHEET'to the console since the type of the protected area is a sheet. console.log(protectionType.toString());
Powrót
ProtectionType
– typ obszaru chronionego, czyli RANGE
lub SHEET
.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getRange()
Pobiera chroniony zakres. Jeśli zabezpieczenie dotyczy arkusza, a nie zakres, ta metoda zwraca zakres, który obejmuje cały arkusz.
// Opens the spreadsheet file by its URL. If you created your script from within // a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet() instead. // TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit'); // Gets a sheet by its name. const sheet = ss.getSheetByName('Sheet1'); // Gets the range 'A1:B10' of Sheet1. const range = sheet.getRange('A1:B10'); // Makes cells A1:B10 a protected range. const sampleProtectedRange = range.protect(); // Gets the protected ranges on the sheet. const protections = sheet.getProtections(SpreadsheetApp.ProtectionType.RANGE); // Logs the A1 notation of the first protected range on the sheet. console.log(protections[0].getRange().getA1Notation());
Powrót
Range
– zakres, który jest chroniony.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getRangeName()
Pobiera nazwę zakresu chronionego, jeśli jest on powiązany z nazwanym zakresem. Zwraca wartość null
, jeśli zabezpieczenie nie jest powiązane z nazwanym zakresem. Pamiętaj, że skrypty muszą wyraźnie
wywołaj setRangeName(rangeName)
, by powiązać zakres chroniony z nazwanym zakresem; połączenia
Range.protect()
, aby utworzyć zabezpieczenie z elementu Range
, który jest jednocześnie
zakres nazwany bez wywołania setRangeName(rangeName)
nie jest wystarczający do powiązania
. Utworzenie zakresu chronionego na podstawie nazwanego zakresu w interfejsie Arkuszy Google wiąże się jednak
je automatycznie.
// Protect a named range in a spreadsheet and log the name of the protected range. var ss = SpreadsheetApp.getActive(); var range = ss.getRange('A1:B10'); var protection = range.protect(); ss.setNamedRange('Test', range); // Create a named range. protection.setRangeName('Test'); // Associate the protection with the named range. Logger.log(protection.getRangeName()); // Verify the name of the protected range.
Powrót
String
– nazwa chronionego zakresu nazwanego lub null
, jeśli zakres chroniony nie jest wartością
powiązane z zakresem nazwanym
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getTargetAudiences()
Zwraca identyfikatory grup odbiorców, którzy mogą edytować zakres chroniony.
Powrót
TargetAudience[]
– tablica identyfikatorów grup odbiorców.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getUnprotectedRanges()
Pobiera tablicę niechronionych zakresów w chronionym arkuszu. Jeśli obiekt Protection
odpowiada zakresowi chronionemu, a nie chronionemu arkuszowi, ta metoda zwraca pusty
. Aby zmienić niechronione zakresy, użyj setUnprotectedRanges(ranges)
do ustawienia
nowa tablica zakresów; aby ponownie chronić cały arkusz, ustaw pustą tablicę.
// Unprotect cells E2:F5 in addition to any other unprotected ranges in the protected sheet. var sheet = SpreadsheetApp.getActiveSheet(); var protection = sheet.protect(); var unprotected = protection.getUnprotectedRanges(); unprotected.push(sheet.getRange('E2:F5')); protection.setUnprotectedRanges(unprotected);
Powrót
Range[]
– tablica niechronionych zakresów w chronionym arkuszu
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
isWarningOnly()
Określa, czy obszar chroniony jest oparty na ostrzeżeniach i ochrony danych. Ochrona oparta na ostrzeżeniach
oznacza, że każdy użytkownik może edytować dane na danym obszarze, chyba że edytowanie powoduje wyświetlenie ostrzeżenia z pytaniem
aby potwierdzić zmianę. Domyślnie chronione zakresy i arkusze nie są podawane w odpowiedzi na ostrzeżenia. Do
zmień stan na ostrzeżenie, użyj funkcji setWarningOnly(warningOnly)
.
// Opens the spreadsheet file by its URL. If you created your script from within // a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet() instead. // TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit') // Gets a sheet by its name. const sheet = ss.getSheetByName('Sheet1'); // Protects the sheet. const sampleProtectedSheet = sheet.protect(); // Sets the warning status for the protected sheet as true. sampleProtectedSheet.setWarningOnly(true); const protectedSheetWarningStatus = sampleProtectedSheet.isWarningOnly(); // Logs the warning status of the protected sheet to the console. console.log(protectedSheetWarningStatus);
Powrót
Boolean
– true
, jeśli chroniony zakres lub arkusz korzysta tylko z ochrony opartej na ostrzeżeniach.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
remove()
Wyłącza ochronę zakresu lub arkusza.
// Remove all range protections in the spreadsheet that the user has permission to edit. var ss = SpreadsheetApp.getActive(); var protections = ss.getProtections(SpreadsheetApp.ProtectionType.RANGE); for (var i = 0; i < protections.length; i++) { var protection = protections[i]; if (protection.canEdit()) { protection.remove(); } }
// Remove sheet protection from the active sheet, if the user has permission to edit it. var sheet = SpreadsheetApp.getActiveSheet(); var protection = sheet.getProtections(SpreadsheetApp.ProtectionType.SHEET)[0]; if (protection && protection.canEdit()) { protection.remove(); }
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
removeEditor(emailAddress)
Usuwa danego użytkownika z listy edytorów chronionego arkusza lub zakresu. Pamiętaj, że jeśli użytkownik należy do grupy dyskusyjnej Google, która ma uprawnienia do edycji, lub jeśli wszyscy użytkownicy w domenie mają użytkownik ma uprawnienia do edycji, może natomiast edytować obszar chroniony. Ani właściciel arkusza kalkulacyjnego, ani nie można usunąć bieżącego użytkownika.
// Opens the spreadsheet file by its URL. If you created your script from within // a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet() instead. // TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit'); // Gets a sheet by its name. const sheet = ss.getSheetByName('Sheet1'); // Creates a variable for an email address. // TODO(developer): Replace the email address with a valid one. const TEST_EMAIL = 'baklavainthebalkans@gmail.com'; // Protects the sheet. const sampleProtectedSheet = sheet.protect(); // Adds an editor to the protected sheet using the email address variable. sampleProtectedSheet.addEditor(TEST_EMAIL); // Removes the editor from the protected sheet using the email address variable. sampleProtectedSheet.removeEditor(TEST_EMAIL); // Gets the editors of the protected sheet. const editors = sampleProtectedSheet.getEditors(); // Logs the editors' email addresses to the console. for (const editor of editors) { console.log(editor.getEmail()); }
Parametry
Nazwa | Typ | Opis |
---|---|---|
emailAddress | String | Adres e-mail użytkownika, którego chcesz usunąć. |
Powrót
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby tworzenia łańcuchów.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
removeEditor(user)
Usuwa danego użytkownika z listy edytorów chronionego arkusza lub zakresu. Pamiętaj, że jeśli użytkownik należy do grupy dyskusyjnej Google, która ma uprawnienia do edycji, lub jeśli wszyscy użytkownicy w domenie mają ma uprawnienia do edycji, użytkownik może też edytować obszar chroniony. Ani żaden właściciela arkusza kalkulacyjnego ani bieżącego użytkownika.
// Opens the spreadsheet file by its URL. If you created your script from within // a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet() instead. // TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit'); // Gets a sheet by its name. const sheet = ss.getSheetByName('Sheet1'); // Protects the sheet. const sampleProtectedSheet = sheet.protect(); // Removes the active user from the editors of the protected sheet. sampleProtectedSheet.removeEditor(Session.getActiveUser()); // Gets the editors of the protected sheet. const editors = sampleProtectedSheet.getEditors(); // Logs the editors' email addresses to the console. for (const editor of editors) { console.log(editor.getEmail()); }
Parametry
Nazwa | Typ | Opis |
---|---|---|
user | User | Reprezentacja użytkownika do usunięcia. |
Powrót
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby tworzenia łańcuchów;
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
removeEditors(emailAddresses)
Usuwa daną tablicę użytkowników z listy edytorów chronionego arkusza lub zakresu. Pamiętaj, że jeśli którykolwiek z użytkowników należy do grupy dyskusyjnej Google, która ma uprawnienia do edycji, lub wszyscy użytkownicy w domenie mają uprawnienia do edycji, nadal mogą edytować chronione w pobliżu. Nie można usunąć ani właściciela arkusza kalkulacyjnego, ani bieżącego użytkownika.
// Protect the active sheet, then remove all other users from the list of editors. var sheet = SpreadsheetApp.getActiveSheet(); var protection = sheet.protect().setDescription('Sample protected sheet'); // Ensure the current user is an editor before removing others. Otherwise, if the user's edit // permission comes from a group, the script throws an exception upon removing the group. var me = Session.getEffectiveUser(); protection.addEditor(me); protection.removeEditors(protection.getEditors()); if (protection.canDomainEdit()) { protection.setDomainEdit(false); }
Parametry
Nazwa | Typ | Opis |
---|---|---|
emailAddresses | String[] | Tablica adresów e-mail użytkowników do usunięcia. |
Powrót
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby tworzenia łańcuchów;
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
removeTargetAudience(audienceId)
Usuwa podaną grupę odbiorców z uprawnieniami do edytowania zakresu chronionego.
Parametry
Nazwa | Typ | Opis |
---|---|---|
audienceId | String | Identyfikator grupy odbiorców do usunięcia. |
Powrót
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby tworzenia łańcuchów.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setDescription(description)
Określa opis chronionego zakresu lub arkusza.
// Opens the spreadsheet file by its URL. If you created your script from within // a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet() instead. // TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit'); // Gets the sheet 'Sheet1' by its name. const sheet = ss.getSheetByName('Sheet1'); // Protects the sheet. const sampleProtectedSheet = sheet.protect(); // Sets the sheet description to 'Sheet1 is protected.' sampleProtectedSheet.setDescription('Sheet1 is protected'); // Gets the description of the protected sheet. const sampleProtectedSheetDescription = sampleProtectedSheet.getDescription(); // Logs the description of the protected sheet to the console. console.log(sampleProtectedSheetDescription);
Parametry
Nazwa | Typ | Opis |
---|---|---|
description | String | Opis chronionego zakresu lub arkusza. |
Powrót
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby tworzenia łańcuchów.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setDomainEdit(editable)
Określa, czy wszyscy użytkownicy w domenie, w której znajduje się arkusz kalkulacyjny, mają uprawnienia do edytowania zakres chroniony lub arkusz. Pamiętaj, że wszyscy użytkownicy, którzy mają jawne uprawnienia do edycji, mogą do edytowania obszaru chronionego bez względu na to ustawienie. Zgłasza wyjątek, jeśli arkusz kalkulacyjny spełnia warunki nie należą do domeny Google Workspace (czyli jeśli należą do konta gmail.com).
Parametry
Nazwa | Typ | Opis |
---|---|---|
editable | Boolean | true , jeśli wszyscy użytkownicy w domenie właściciela arkusza kalkulacyjnego powinni mieć
uprawnienia do edytowania zakresu chronionego lub arkusza; false , jeśli nie. |
Powrót
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby tworzenia łańcuchów;
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setNamedRange(namedRange)
Powiąże zakres chroniony z istniejącym zakresem nazwanym. Jeśli zakres nazwany obejmuje
innego zakresu niż bieżący zakres chroniony, metoda ta przenosi zabezpieczenie tak, aby obejmowało
zakres nazwany. Nazwany zakres musi znajdować się w tym samym arkuszu co obecnie chroniony zakres
zakres dat. Pamiętaj, że skrypty muszą bezpośrednio wywoływać tę metodę, aby powiązać zakres chroniony z
zakres nazwany; Wywołuję Range.protect()
, aby utworzyć zabezpieczenie z Range
który jest zakresem nazwanym, bez wywołania funkcji setRangeName(rangeName)
, nie jest
w sposób wystarczający do ich skojarzenia. Utworzenie zakresu chronionego z nazwanego zakresu w
Interfejs Arkuszy Google powiąże je automatycznie.
// Opens the spreadsheet file by its URL. If you created your script from within // a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet() instead. // TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit'); // Protects cells A1:D10 on Sheet1. const sheet = ss.getSheetByName('Sheet1'); const protectedRange = sheet.getRange('A1:D10').protect(); // Logs the current protected range, A1:D10. console.log(protectedRange.getRange().getA1Notation()); // Creates a named range for cells E1:J10 called 'NewRange.' const newRange = sheet.getRange('E1:J10'); ss.setNamedRange('NewRange', newRange); const namedRange = ss.getNamedRanges()[0]; // Updates the protected range to the named range, 'NewRange.' // This updates the protected range on Sheet1 from A1:D10 to E1:J10. protectedRange.setNamedRange(namedRange); // Logs the updated protected range to the console. console.log(protectedRange.getRange().getA1Notation());
Parametry
Nazwa | Typ | Opis |
---|---|---|
namedRange | NamedRange | Istniejący zakres nazwany do powiązania z zakresem chronionym. |
Powrót
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby tworzenia łańcuchów.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setRange(range)
Dostosowuje chroniony zakres. Jeśli podany zakres obejmuje inny obszar niż obecnie chroniony zakres, ta metoda przenosi zabezpieczenie tak, aby obejmowało nowy zakres.
// Opens the spreadsheet file by its URL. If you created your script from within // a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet() instead. // TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit'); // Protects cells A1:D10 on Sheet1 of the spreadsheet. const sheet = ss.getSheetByName('Sheet1'); const protectedRange = sheet.getRange('A1:D10').protect(); // Logs the original protected range, A1:D10, to the console. console.log(protectedRange.getRange().getA1Notation()); // Gets the range E1:J10. const newRange = sheet.getRange('E1:J10'); // Updates the protected range to E1:J10. protectedRange.setRange(newRange); // Logs the updated protected range to the console. console.log(protectedRange.getRange().getA1Notation());
Parametry
Nazwa | Typ | Opis |
---|---|---|
range | Range | Nowy zakres chroniony przed edytowaniem. |
Powrót
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby tworzenia łańcuchów.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setRangeName(rangeName)
Przypisuje zakres chroniony z istniejącym zakresem nazwanym. Jeśli zakres nazwany obejmuje
innego zakresu niż bieżący zakres chroniony, metoda ta przenosi zabezpieczenie tak, aby obejmowało
zakres nazwany. Nazwany zakres musi znajdować się w tym samym arkuszu co obecnie chroniony zakres
zakres dat. Pamiętaj, że skrypty muszą bezpośrednio wywoływać tę metodę, aby powiązać zakres chroniony z
zakres nazwany; Wywołuję Range.protect()
, aby utworzyć zabezpieczenie z Range
który jest zakresem nazwanym, bez wywołania funkcji setRangeName(rangeName)
, nie jest
w sposób wystarczający do ich skojarzenia. Utworzenie zakresu chronionego z nazwanego zakresu w
Interfejs Arkuszy Google powiąże je automatycznie.
// Protect a named range in a spreadsheet and log the name of the protected range. var ss = SpreadsheetApp.getActive(); var range = ss.getRange('A1:B10'); var protection = range.protect(); ss.setNamedRange('Test', range); // Create a named range. protection.setRangeName('Test'); // Associate the protection with the named range. Logger.log(protection.getRangeName()); // Verify the name of the protected range.
Parametry
Nazwa | Typ | Opis |
---|---|---|
rangeName | String | Nazwa nazwanego zakresu, który ma być chroniony. |
Powrót
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby tworzenia łańcuchów;
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setUnprotectedRanges(ranges)
Wyłącza ochronę danej tablicy zakresów w chronionym arkuszu. Zgłasza wyjątek, jeśli
Protection
obiekt odpowiada zakresowi chronionemu zamiast chronionego arkusza lub jeśli
żaden z zakresów nie znajduje się w chronionym arkuszu. Aby zmienić niechronione zakresy, ustaw nowe
tablica zakresów; aby ponownie chronić cały arkusz, ustaw pustą tablicę.
// Protect the active sheet except B2:C5, then remove all other users from the list of editors. var sheet = SpreadsheetApp.getActiveSheet(); var protection = sheet.protect().setDescription('Sample protected sheet'); var unprotected = sheet.getRange('B2:C5'); protection.setUnprotectedRanges([unprotected]); // Ensure the current user is an editor before removing others. Otherwise, if the user's edit // permission comes from a group, the script throws an exception upon removing the group. var me = Session.getEffectiveUser(); protection.addEditor(me); protection.removeEditors(protection.getEditors()); if (protection.canDomainEdit()) { protection.setDomainEdit(false); }
Parametry
Nazwa | Typ | Opis |
---|---|---|
ranges | Range[] | Tablica zakresów, które mają pozostać niechronione w chronionym arkuszu. |
Powrót
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby tworzenia łańcuchów;
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setWarningOnly(warningOnly)
Określa, czy ten zakres chroniony ma korzystać z ustawień „opartych na ostrzeżenia” i ochrony danych. Oparta na ostrzeżeniach
oznacza, że każdy użytkownik może edytować dane na tym obszarze, ale edytowanie powoduje wyświetlenie ostrzeżenia
z prośbą o potwierdzenie zmiany. Domyślnie chronione zakresy i arkusze nie są
na podstawie ostrzeżenia. Aby sprawdzić stan ostrzeżenia, użyj isWarningOnly()
.
// Opens the spreadsheet file by its URL. If you created your script from within // a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet() instead. // TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit'); // Gets the sheet 'Sheet1' by its name. const sheet = ss.getSheetByName('Sheet1'); // Protects the sheet and sets the protection to warning-based. const sampleProtectedSheet = sheet.protect().setWarningOnly(true); // Logs whether the protected sheet is warning-based to the console. console.log(sampleProtectedSheet.isWarningOnly());
Parametry
Nazwa | Typ | Opis |
---|---|---|
warningOnly | Boolean |
Powrót
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby tworzenia łańcuchów.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets