Uzyskiwanie dostępu do chronionych zakresów i arkuszy oraz modyfikowanie ich. Chroniony zakres może chronić statyczny zakres komórek lub zakres nazwany. Chroniony arkusz może zawierać regiony niechronione. W przypadku arkuszy kalkulacyjnych utworzonych w starszej wersji Arkuszy Google użyj klasy
.
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 daną tablicę użytkowników do listy edytorów chronionego arkusza lub zakresu. |
addTargetAudience(audienceId) | Protection | Dodaje wskazaną grupę odbiorców jako edytora w chronionym zakresie. |
canDomainEdit() | Boolean | Określa, czy wszyscy użytkownicy w domenie, do której należy arkusz kalkulacyjny, mają uprawnienia do edytowania chronionego zakresu lub arkusza. |
canEdit() | Boolean | Określa, czy użytkownik ma uprawnienia do edytowania zakresu lub arkusza chronionego. |
getDescription() | String | Pobiera opis chronionego zakresu lub arkusza. |
getEditors() | User[] | Pobiera listę edytorów dla chronionego zakresu lub arkusza. |
getProtectionType() | ProtectionType | Pobiera typ chronionego obszaru (RANGE lub SHEET ). |
getRange() | Range | Pobiera chroniony zakres. |
getRangeName() | String | Pobiera nazwę chronionego zakresu, jeśli jest on powiązany z nazwanym zakresem. |
getTargetAudiences() | TargetAudience[] | Zwraca identyfikatory grup odbiorców, które mogą edytować zakres chroniony. |
getUnprotectedRanges() | Range[] | Pobiera tablicę niechronionych zakresów w chronionym arkuszu. |
isWarningOnly() | Boolean | Określa, czy obszar chroniony używa ochrony. |
remove() | void | Chroni zakres lub arkusz. |
removeEditor(emailAddress) | Protection | Usunięcie określonego użytkownika z listy edytorów chronionego arkusza lub zakresu. |
removeEditor(user) | Protection | Usunięcie określonego użytkownika z listy edytorów chronionego arkusza lub zakresu. |
removeEditors(emailAddresses) | Protection | Usuwa określoną tablicę użytkowników z listy edytorów chronionego arkusza lub zakresu. |
removeTargetAudience(audienceId) | Protection | Usuwa określoną grupę odbiorców jako edytora zakresu chronionego. |
setDescription(description) | Protection | Ustawia opis zakresu lub arkusza chronionego. |
setDomainEdit(editable) | Protection | Określa, czy wszyscy użytkownicy w domenie, do której należy arkusz kalkulacyjny, mają uprawnienia do edytowania chronionego zakresu lub arkusza. |
setNamedRange(namedRange) | Protection | Powiąże 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 | Bez zabezpieczenia danej tablicy zakresów w chronionym arkuszu. |
setWarningOnly(warningOnly) | Protection | Określa, czy w tym chronionym zakresie jest używana ochrona. |
Szczegółowa dokumentacja
addEditor(emailAddress)
Dodaje danego użytkownika do listy edytorów chronionego arkusza lub zakresu. Ta metoda nie powoduje automatycznego przyznania użytkownikowi uprawnień do edytowania arkusza kalkulacyjnego; aby je dodatkowo dodać, wywołaj Spreadsheet.addEditor(emailAddress)
.
Parametry
Nazwa | Typ | Opis |
---|---|---|
emailAddress | String | Adres e-mail użytkownika, którego chcesz dodać. |
Zwróć
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby łańcucha.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego 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 powoduje automatycznego przyznania użytkownikowi uprawnień do edytowania arkusza kalkulacyjnego; aby je dodatkowo dodać, wywołaj Spreadsheet.addEditor(user)
.
Parametry
Nazwa | Typ | Opis |
---|---|---|
user | User | Wskazanie użytkownika do dodania. |
Zwróć
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby łańcucha.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
addEditors(emailAddresses)
Dodaje daną tablicę użytkowników do listy edytorów chronionego arkusza lub zakresu. Ta metoda nie przyznaje użytkownikom automatycznie uprawnień do edytowania arkusza kalkulacyjnego. Oprócz tego wywołujemy właściwość Spreadsheet.addEditors(emailAddresses)
.
Parametry
Nazwa | Typ | Opis |
---|---|---|
emailAddresses | String[] | Tablica adresów e-mail użytkowników, których chcesz dodać. |
Zwróć
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby łańcucha.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
addTargetAudience(audienceId)
Dodaje wskazaną grupę odbiorców jako edytora w chronionym zakresie.
Parametry
Nazwa | Typ | Opis |
---|---|---|
audienceId | String | Identyfikator grupy odbiorców, którą chcesz dodać. |
Zwróć
Protection
– obiekt reprezentujący ustawienia zabezpieczeń na potrzeby łańcucha.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego 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 edytowania chronionego zakresu lub arkusza. Zwraca wyjątek, jeśli użytkownik nie ma uprawnień do edytowania zakresu lub arkusza chronionego.
Zwróć
Boolean
– true
, jeśli wszyscy użytkownicy w domenie, do której należy arkusz kalkulacyjny, mają uprawnienia do edytowania chronionego zakresu lub arkusza; false
– w przeciwnym razie
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego 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 lub arkusza chronionego. 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(); } }
Zwróć
Boolean
– true
, jeśli użytkownik ma uprawnienia do edycji chronionego zakresu lub arkusza; false
– jeśli nie
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego 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 ustawisz żadnego opisu, ta metoda zwróci pusty ciąg znaków.
Zwróć
String
– opis chronionego zakresu lub arkusza albo pusty ciąg, jeśli nie jest ustawiony opis.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getEditors()
Pobiera listę edytorów dla chronionego zakresu lub arkusza. Zwraca wyjątek, jeśli użytkownik nie ma uprawnień do edytowania zakresu lub arkusza chronionego.
// 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); }
Zwróć
User[]
– tablica użytkowników z uprawnieniami do edytowania zakresu lub arkusza chronionego
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getProtectionType()
Pobiera typ chronionego obszaru (RANGE
lub SHEET
).
Zwróć
ProtectionType
– typ obszaru chronionego, RANGE
lub SHEET
.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getRange()
Pobiera chroniony zakres. Jeśli zabezpieczenie jest stosowane do arkusza, a nie do zakresu, ta metoda zwraca zakres, który obejmuje cały arkusz.
Zwróć
Range
– zakres, który jest chroniony;
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getRangeName()
Pobiera nazwę chronionego zakresu, 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ą jawnie wywołać funkcję setRangeName(rangeName)
, aby powiązać chroniony zakres z nazwanym zakresem. Wywołanie Range.protect()
w celu utworzenia zabezpieczenia z Range
, który wydaje się być nazwany, bez wywołania setRangeName(rangeName)
nie wystarcza do powiązania ich. Jednak utworzenie zakresu chronionego na podstawie zakresu nazwanego w interfejsie Arkuszy Google automatycznie powoduje ich powiązanie.
// 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.
Zwróć
String
– nazwa chronionego zakresu lub null
, jeśli chroniony zakres nie jest powiązany z nazwanym zakresem.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getTargetAudiences()
Zwraca identyfikatory grup odbiorców, które mogą edytować zakres chroniony.
Zwróć
TargetAudience[]
– tablica identyfikatorów grup odbiorców,
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego 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 chronionemu zakresowi, a nie zabezpieczonemu arkuszowi, ta metoda zwraca pusty tablica. Aby zmienić niechronione zakresy, użyj setUnprotectedRanges(ranges)
do ustawienia nowej tablicy zakresów. Aby ponownie zabezpieczyć 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);
Zwróć
Range[]
– tablica niezabezpieczonych zakresów w chronionym arkuszu
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
isWarningOnly()
Określa, czy obszar chroniony używa ochrony. Ochrona oparta na ostrzeżeniach oznacza, że każdy użytkownik może edytować dane w danym obszarze. Wyjątkiem jest edytowanie z ostrzeżeniem. Domyślnie chronione zakresy i arkusze nie są oparte na ostrzeżeniach. Aby zmienić stan ostrzeżenia, użyj właściwości setWarningOnly(warningOnly)
.
Zwróć
Boolean
– true
, jeśli chroniony zakres lub arkusz korzysta tylko z zabezpieczeń opartych na ostrzeżeniach;
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
remove()
Chroni zakres lub arkusz.
// 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 przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
removeEditor(emailAddress)
Usunięcie określonego 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ą uprawnienia do edycji, nadal mogą edytować obszar chroniony. Nie można usunąć właściciela arkusza kalkulacyjnego ani bieżącego użytkownika.
Parametry
Nazwa | Typ | Opis |
---|---|---|
emailAddress | String | Adres e-mail użytkownika, którego chcesz usunąć. |
Zwróć
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby łańcucha.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
removeEditor(user)
Usunięcie określonego 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ą uprawnienia do edycji, użytkownik nadal może edytować obszar chroniony. Nie można usunąć właściciela arkusza kalkulacyjnego ani bieżącego użytkownika.
Parametry
Nazwa | Typ | Opis |
---|---|---|
user | User | Prezentacja użytkownika do usunięcia. |
Zwróć
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby łańcucha.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
removeEditors(emailAddresses)
Usuwa określoną tablicę użytkowników z listy edytorów chronionego arkusza lub zakresu. Pamiętaj, że jeśli któryś z użytkowników należy do grupy dyskusyjnej Google, która ma uprawnienia do edycji, lub jeśli wszyscy użytkownicy w domenie mają uprawnienia do edycji, taki użytkownik nadal może edytować obszar chroniony. Nie można usunąć 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. |
Zwróć
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby łańcucha.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
removeTargetAudience(audienceId)
Usuwa określoną grupę odbiorców jako edytora zakresu chronionego.
Parametry
Nazwa | Typ | Opis |
---|---|---|
audienceId | String | Identyfikator grupy odbiorców do usunięcia. |
Zwróć
Protection
– obiekt reprezentujący ustawienia zabezpieczeń na potrzeby łańcucha.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setDescription(description)
Ustawia opis zakresu lub arkusza chronionego.
Parametry
Nazwa | Typ | Opis |
---|---|---|
description | String | Opis chronionego zakresu lub arkusza. |
Zwróć
Protection
– obiekt reprezentujący ustawienia zabezpieczeń na potrzeby łańcucha.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego 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, do której należy arkusz kalkulacyjny, mają uprawnienia do edytowania chronionego zakresu lub arkusza. Pamiętaj, że wszyscy użytkownicy, którzy mają jawne uprawnienia do edycji, mogą edytować obszar chroniony niezależnie od tego ustawienia. Zwraca wyjątek, jeśli arkusz kalkulacyjny nie należy do domeny Google Workspace (tzn. należy do konta gmail.com).
Parametry
Nazwa | Typ | Opis |
---|---|---|
editable | Boolean | true , jeśli wszyscy użytkownicy w domenie, do której należy arkusz kalkulacyjny, powinni mieć uprawnienia do edycji chronionego zakresu lub arkusza; false – jeśli nie. |
Zwróć
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby łańcucha.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego 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 inny obszar niż bieżący zakres chroniony, ta metoda powoduje przeniesienie zabezpieczeń w taki zakres. Zakres nazwany musi znajdować się w tym samym arkuszu co bieżący zakres chroniony. Skrypty muszą wyraźnie wywołać tę metodę, aby powiązać zakres chroniony z nazwanym zakresem. Wywołanie Range.protect()
w celu utworzenia zabezpieczenia z zakresu Range
, który jest nazwą nazwanym, bez wywołania setRangeName(rangeName)
nie wystarcza. Jednak utworzenie zakresu chronionego na podstawie zakresu nazwanego w interfejsie Arkuszy Google powoduje automatyczne powiązanie.
Parametry
Nazwa | Typ | Opis |
---|---|---|
namedRange | NamedRange | Istniejący zakres nazwany powiązany z chronionym zakresem. |
Zwróć
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby łańcucha.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego 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ż bieżący zakres chroniony, ta metoda spowoduje przeniesienie nowego zabezpieczenia.
Parametry
Nazwa | Typ | Opis |
---|---|---|
range | Range | Nowy zakres ochrony przed zmianami. |
Zwróć
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby łańcucha.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setRangeName(rangeName)
Powiąże zakres chroniony z istniejącym zakresem nazwanym. Jeśli zakres nazwany obejmuje inny obszar niż bieżący zakres chroniony, ta metoda powoduje przeniesienie zabezpieczeń w taki zakres. Zakres nazwany musi znajdować się w tym samym arkuszu co bieżący zakres chroniony. Skrypty muszą wyraźnie wywołać tę metodę, aby powiązać zakres chroniony z nazwanym zakresem. Wywołanie Range.protect()
w celu utworzenia zabezpieczenia z zakresu Range
, który jest nazwą nazwanym, bez wywołania setRangeName(rangeName)
nie wystarcza. Jednak utworzenie zakresu chronionego na podstawie zakresu nazwanego w interfejsie Arkuszy Google powoduje automatyczne powiązanie.
// 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 zakresu nazwanego, który ma być chroniony. |
Zwróć
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby łańcucha.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setUnprotectedRanges(ranges)
Bez zabezpieczenia danej tablicy zakresów w chronionym arkuszu. Zwraca wyjątek, jeśli obiekt Protection
odpowiada chronionemu zakresowi zamiast chronionemu arkuszowi lub jeśli żaden z zakresów nie znajduje się w chronionym arkuszu. Aby zmienić niechronione zakresy, ustaw nowy układ zakresów. Aby ponownie zabezpieczyć 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. |
Zwróć
Protection
– obiekt reprezentujący ustawienia ochrony na potrzeby łańcucha.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setWarningOnly(warningOnly)
Określa, czy w tym chronionym zakresie jest używana ochrona. Ochrona oparta na ostrzeżeniach oznacza, że każdy użytkownik może edytować dane w tym obszarze. Wyjątek stanowią zmiany, które ostrzegają użytkowników o konieczności potwierdzenia zmiany. Domyślnie chronione zakresy lub arkusze nie są oparte na ostrzeżeniach. Aby sprawdzić stan ostrzeżenia, użyj polecenia isWarningOnly()
.
Parametry
Nazwa | Typ | Opis |
---|---|---|
warningOnly | Boolean |
Zwróć
Protection
– obiekt reprezentujący ustawienia zabezpieczeń na potrzeby łańcucha.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets