Formatação básica

Com a API Google Sheets, você pode atualizar a formatação de células e intervalos em planilhas. Os exemplos nesta página ilustram como alguns operações de formatação podem ser realizadas com a API Sheets. Você pode encontre mais exemplos de formatação condicional na consulta Condicional formatação.

Ao atualizar uma planilha, alguns tipos de solicitação podem retornar respostas. Elas são retornadas em uma matriz, com cada resposta ocupando o mesmo índice que a solicitação correspondente. Algumas solicitações não têm respostas, e para aquelas a resposta estiver vazia. A estrutura das respostas para esses exemplos pode ser encontrada em spreadsheets.batchUpdate

Esses exemplos são apresentados na forma de solicitações HTTP para serem neutras. Para saber como implementar uma atualização em lote em diferentes idiomas usando bibliotecas de clientes da API do Google, consulte Atualizar planilhas.

Nestes exemplos, os marcadores de posição SPREADSHEET_ID e SHEET_ID indica onde você deve fornecer esses IDs. Você pode encontrar a planilha ID no URL da planilha. Você pode receber o ID da planilha usando o spreadsheets.get. A são especificados usando a notação A1. Um exemplo de intervalo é Sheet1!A1:D5.

No vídeo acima, você aprendeu a formatar células da planilha de várias maneiras, incluindo: criação de linhas congeladas, células em negrito, implementação de valores formatação, validação de células e restrição de valores de células.

Editar bordas de células

O seguinte spreadsheets.batchUpdate um exemplo de código mostra como usar a UpdateBordersRequest para dar a cada célula do intervalo A1:F10 uma borda superior e inferior azul tracejada. A O campo innerHorizontal cria bordas horizontais no interior do intervalo. A omissão do campo resultaria na adição de bordas apenas ao topo e parte inferior de todo o intervalo.

Tabela 3 por 3 com cada célula com bordas tracejadas azuis e superiores.
Figura 1. Formate cada célula com uma borda superior e inferior azul tracejada na página.

Confira o protocolo da solicitação abaixo.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "updateBorders": {
        "range": {
          "sheetId": SHEET_ID,
          "startRowIndex": 0,
          "endRowIndex": 10,
          "startColumnIndex": 0,
          "endColumnIndex": 6
        },
        "top": {
          "style": "DASHED",
          "width": 1,
          "color": {
            "blue": 1.0
          },
        },
        "bottom": {
          "style": "DASHED",
          "width": 1,
          "color": {
            "blue": 1.0
          },
        },
        "innerHorizontal": {
          "style": "DASHED",
          "width": 1,
          "color": {
            "blue": 1.0
          },
        },
      }
    }
  ]
}

Formatar uma linha de cabeçalho

O seguinte spreadsheets.batchUpdate um exemplo de código mostra como usar a RepeatCellRequest para formatar uma linha de cabeçalho em uma planilha. A primeira solicitação atualiza a cor do texto, a cor de fundo, o tamanho da fonte do texto e a justificativa do texto e torna em negrito. A omissão dos índices de coluna no campo range faz com que todo o a ser formatada. A segunda solicitação ajusta as propriedades da página para que o a linha de cabeçalho está congelada.

Tabela 3 por 3 com uma linha de cabeçalho formatada em uma planilha.
Figura 2. Formate a linha do cabeçalho em uma planilha.

Confira o protocolo da solicitação abaixo.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "repeatCell": {
        "range": {
          "sheetId": SHEET_ID,
          "startRowIndex": 0,
          "endRowIndex": 1
        },
        "cell": {
          "userEnteredFormat": {
            "backgroundColor": {
              "red": 0.0,
              "green": 0.0,
              "blue": 0.0
            },
            "horizontalAlignment" : "CENTER",
            "textFormat": {
              "foregroundColor": {
                "red": 1.0,
                "green": 1.0,
                "blue": 1.0
              },
              "fontSize": 12,
              "bold": true
            }
          }
        },
        "fields": "userEnteredFormat(backgroundColor,textFormat,horizontalAlignment)"
      }
    },
    {
      "updateSheetProperties": {
        "properties": {
          "sheetId": SHEET_ID,
          "gridProperties": {
            "frozenRowCount": 1
          }
        },
        "fields": "gridProperties.frozenRowCount"
      }
    }
  ]
}

Mesclar células

O seguinte spreadsheets.batchUpdate um exemplo de código mostra como usar a MergeCellsRequest para mesclar células. A primeira solicitação mescla o intervalo A1:B2 em uma única célula. A segunda solicitação mescla as colunas em A3:B6, deixando as linhas separadas.

Tabela 3 por 3 com células mescladas em uma página.
Figura 3. Mesclar células em uma página.

Confira o protocolo da solicitação abaixo.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "mergeCells": {
        "range": {
          "sheetId": SHEET_ID,
          "startRowIndex": 0,
          "endRowIndex": 2,
          "startColumnIndex": 0,
          "endColumnIndex": 2
        },
        "mergeType": "MERGE_ALL"
      }
    },
    {
      "mergeCells": {
        "range": {
          "sheetId": SHEET_ID,
          "startRowIndex": 2,
          "endRowIndex": 6,
          "startColumnIndex": 0,
          "endColumnIndex": 2
        },
        "mergeType": "MERGE_COLUMNS"
      }
    },
  ]
}

Definir um formato personalizado de data/hora ou decimal para um intervalo

O seguinte spreadsheets.batchUpdate um exemplo de código mostra como usar a RepeatCellRequest para atualizar as células com formatos personalizados de número e data/hora. A primeira solicitação fornece às células no intervalo A1:A10 o formato de data e hora personalizado hh:mm:ss am/pm, ddd mmm dd yyyy. Um exemplo de data e hora nesse formato é: "02:05:07 PM, Sun Apr 03 2016".

A segunda solicitação fornece às células de B1:B10 o formato de número personalizado #,##0.0000, que indica que os números precisam ser agrupados por vírgulas separadores, que deve haver quatro dígitos depois do decimal e que todos, um zero inicial deve ser descartado. Por exemplo, o número "3,14" é renderizado como "3,1400", e "12345.12345" é renderizado como "12.345.1235".

Tabela 3 por 3 com formatos personalizados de número e data/hora em uma planilha.
Figura 4. Atualize as células para ter formatos personalizados de número e data/hora em uma planilha.

Confira o protocolo da solicitação abaixo.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "repeatCell": {
        "range": {
          "sheetId": SHEET_ID,
          "startRowIndex": 0,
          "endRowIndex": 10,
          "startColumnIndex": 0,
          "endColumnIndex": 1
        },
        "cell": {
          "userEnteredFormat": {
            "numberFormat": {
              "type": "DATE",
              "pattern": "hh:mm:ss am/pm, ddd mmm dd yyyy"
            }
          }
        },
        "fields": "userEnteredFormat.numberFormat"
      }
    },
    {
      "repeatCell": {
        "range": {
          "sheetId": SHEET_ID,
          "startRowIndex": 0,
          "endRowIndex": 10,
          "startColumnIndex": 1,
          "endColumnIndex": 2
        },
        "cell": {
          "userEnteredFormat": {
            "numberFormat": {
              "type": "NUMBER",
              "pattern": "#,##0.0000"
            }
          }
        },
        "fields": "userEnteredFormat.numberFormat"
      }
    }
  ]
}