Plages nommées & protégées

L'API Google Sheets vous permet de créer, modifier et supprimer des feuilles nommées ou protégées plages. Les exemples de cette page montrent comment obtenir des Opérations Sheets avec l'API Sheets

Ces exemples sont présentés sous la forme de requêtes HTTP et neutres. Pour découvrir comment implémenter une mise à jour par lot dans différents langages à l'aide de les bibliothèques clientes de l'API Google, consultez la section Mettre à jour feuilles de calcul.

Dans ces exemples, les espaces réservés SPREADSHEET_ID et SHEET_ID indique où vous devez fournir ces identifiants. Vous pouvez accéder à la feuille de calcul ID dans l'URL de la feuille de calcul. Vous pouvez obtenir l'ID de la feuille de calcul à l'aide de l'élément spreadsheets.get. La sont spécifiées au format A1. Une exemple de plage est Feuille1!A1:D5.

De plus, les espaces réservés NAMED_RANGE_ID et PROTECTED_RANGE_ID fournit les ID des plages nommées et protégées. Les namedRangeId et Les protectedRangeId sont utilisés lorsque vous effectuez des requêtes pour mettre à jour ou supprimer le plages associées. L'ID est renvoyé dans la réponse à une API Sheets. qui crée une plage nommée ou protégée. Vous pouvez obtenir les identifiants plages avec le paramètre spreadsheets.get, dans la Spreadsheet corps de la réponse.

Ajouter des plages nommées ou protégées

Les éléments suivants : spreadsheets.batchUpdate exemple de code montre comment utiliser deux objets de requête. La première utilise AddNamedRangeRequest pour attribuer à la plage A1:E3 le nom « Nombres ». La seconde utilise AddProtectedRangeRequest d'associer une protection de niveau d'avertissement à la plage A4:E4. Ce niveau de protection permet tout de même de modifier les cellules de la plage, mais un avertissement s'affiche avant d'effectuer le changement.

Ces requêtes renvoient un AddNamedRangeResponse et un AddProtectedRangeResponse, contenant les identifiants et les propriétés de la plage.

Le protocole de requête est présenté ci-dessous.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "addNamedRange": {
        "namedRange": {
          "name": "Counts",
          "range": {
            "sheetId": SHEET_ID,
            "startRowIndex": 0,
            "endRowIndex": 3,
            "startColumnIndex": 0,
            "endColumnIndex": 5,
          },
        }
      }
    },
    {
      "addProtectedRange": {
        "protectedRange": {
          "range": {
            "sheetId": SHEET_ID,
            "startRowIndex": 3,
            "endRowIndex": 4,
            "startColumnIndex": 0,
            "endColumnIndex": 5,
          },
          "description": "Protecting total row",
          "warningOnly": true
        }
      }
    }
  ]
}

Supprimer des plages nommées ou protégées

Les éléments suivants : spreadsheets.batchUpdate exemple de code montre comment utiliser deux objets de requête. La première utilise DeleteNamedRangeRequest pour supprimer une plage nommée existante, en utilisant le paramètre NAMED_RANGE_ID d'une l'appel d'API précédent. La seconde utilise DeleteProtectedRangeRequest pour supprimer une protection de plage existante, à l'aide du PROTECTED_RANGE_ID à partir d'un appel d'API précédent.

Le protocole de requête est présenté ci-dessous.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "deleteNamedRange": {
          "namedRangeId": "NAMED_RANGE_ID",
      }
    },
    {
      "deleteProtectedRange": {
        "protectedRangeId": PROTECTED_RANGE_ID,
      }
    }
  ]
}

Mettre à jour des plages nommées ou protégées

Les éléments suivants : spreadsheets.batchUpdate exemple de code montre comment utiliser deux objets de requête. La première utilise UpdateNamedRangeRequest pour remplacer le nom d'une plage nommée existante par "InitialCounts", à l'aide de l'NAMED_RANGE_ID à partir d'un appel d'API précédent. La seconde utilise UpdateProtectedRangeRequest pour mettre à jour une plage protégée existante afin de protéger désormais la plage d'adresses IP. La Méthode Editors n'autorise que les utilisateurs répertoriés à modifier ces cellules. Cette requête utilise le NAMED_RANGE_ID et PROTECTED_RANGE_ID des appels d'API précédents.

Le protocole de requête est présenté ci-dessous.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "updateNamedRange": {
        "namedRange": {
          "namedRangeId": NAMED_RANGE_ID,
          "name": "InitialCounts",
        },
        "fields": "name",
      }
    },
    {
      "updateProtectedRange": {
        "protectedRange": {
          "protectedRangeId": PROTECTED_RANGE_ID,
          "namedRangeId": NAMED_RANGE_ID,
          "warningOnly": false,
          "editors": {
            "users": [
              "charlie@example.com",
              "sasha@example.com"
            ]
          }
        },
        "fields": "namedRangeId,warningOnly,editors"
      }
    }
  ]
}