SHEETS_FORMAT - Formatar Células do Google Sheets
O que é este Node?
O SHEETS_FORMAT é o node responsável por aplicar formatação visual às células do Google Sheets: cores, bordas, negrito, alinhamento, número de decimais, etc.
Por que este Node existe?
Formatação torna planilhas mais legíveis e profissionais. O SHEETS_FORMAT existe para:
- Destacar Informações: Colorir linhas importantes ou status
- Organização Visual: Aplicar bordas e cores de cabeçalho
- Formatação de Dados: Definir formato de moeda, porcentagem, data
- Condicional: Formatar células baseado em valores
Como funciona internamente?
Quando o SHEETS_FORMAT é executado, o sistema:
- Autentica: Valida tokens OAuth2
- Prepara requests: Monta objeto de formatação (cores, fonte, bordas)
- Executa batchUpdate: Chama com requisições repeatCell ou updateCells
- Aplica formato: Modifica aparência mantendo valores
- Retorna confirmação: Informa sucesso da formatação
Código interno (baseado na API Google Sheets):
case 'format':
const formatResult = await sheets.spreadsheets.batchUpdate({
spreadsheetId: data.spreadsheetId,
requestBody: {
requests: [{
repeatCell: {
range: {
sheetId: data.sheetId,
startRowIndex: data.startRow,
endRowIndex: data.endRow,
startColumnIndex: data.startColumn,
endColumnIndex: data.endColumn,
},
cell: {
userEnteredFormat: {
backgroundColor: data.backgroundColor,
textFormat: {
bold: data.bold,
fontSize: data.fontSize,
},
},
},
fields: 'userEnteredFormat(backgroundColor,textFormat)',
},
}],
},
});
return {
success: true,
message: 'Format applied successfully',
};
Quando você DEVE usar este Node?
Use SHEETS_FORMAT quando precisar melhorar visualização e organização:
Casos de uso
- Cabeçalho: "Colorir primeira linha de cinza com texto em negrito"
- Status Visual: "Pintar linha de verde se 'Concluído', vermelho se 'Pendente'"
- Relatórios: "Formatar valores como moeda R$"
- Destaque: "Negrito e sublinhado em totais"
Quando NÃO usar SHEETS_FORMAT
- Alterar valores: Use NODE SHEETS_WRITE ou SHEETS_UPDATE
- Estrutura de dados: Formatação é visual, não afeta cálculos
Parâmetros
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| operation | string | Sim | Deve ser "format" |
| spreadsheetId | string | Sim | ID da planilha |
| sheetId | number | Sim | ID da aba |
| startRow | number | Sim | Linha inicial (base 0) |
| endRow | number | Sim | Linha final exclusiva (base 0) |
| startColumn | number | Sim | Coluna inicial (base 0) |
| endColumn | number | Sim | Coluna final exclusiva (base 0) |
| backgroundColor | object | Não | Cor RGB: |
| bold | boolean | Não | Negrito |
| fontSize | number | Não | Tamanho da fonte |
| accessToken | string | Sim | Token OAuth2 |
| refreshToken | string | Sim | Token OAuth2 refresh |
Exemplo 1: Formatar Cabeçalho
Objetivo: Aplicar estilo ao cabeçalho da tabela
JSON para Importar
{
"name": "Formatar Cabeçalho",
"nodes": [
{
"id": "start_1",
"type": "start",
"position": { "x": 100, "y": 100 },
"data": { "label": "Início" }
},
{
"id": "sheets_1",
"type": "google_sheets",
"position": { "x": 300, "y": 100 },
"data": {
"label": "Formatar Header",
"parameters": {
"operation": "format",
"spreadsheetId": "1ABC_Data_XYZ",
"sheetId": 0,
"startRow": 0,
"endRow": 1,
"startColumn": 0,
"endColumn": 5,
"backgroundColor": {
"red": 0.2,
"green": 0.2,
"blue": 0.2
},
"bold": true,
"fontSize": 12,
"accessToken": "{{google_access_token}}",
"refreshToken": "{{google_refresh_token}}"
}
}
},
{
"id": "message_1",
"type": "message",
"position": { "x": 500, "y": 100 },
"data": {
"label": "Confirmar",
"parameters": {
"message": "✅ Cabeçalho formatado com sucesso"
}
}
},
{
"id": "end_1",
"type": "end",
"position": { "x": 700, "y": 100 },
"data": { "label": "Fim" }
}
],
"edges": [
{ "source": "start_1", "target": "sheets_1" },
{ "source": "sheets_1", "target": "message_1" },
{ "source": "message_1", "target": "end_1" }
]
}
Saída esperada:
Sistema: ✅ Cabeçalho formatado com sucesso
Resposta do Node
{
"success": true,
"message": "Format applied successfully"
}
Boas Práticas
✅ SIM: - Use cores sutis para melhor leitura - Formate cabeçalhos consistentemente - Use negrito para destacar informações importantes - Valores RGB entre 0 e 1 (não 0-255)
❌ NÃO: - Não abuse de cores (atrapalha leitura) - Não confunda índices base 0 com números visuais - Não formate células desnecessariamente
Dicas
💡 Dica 1: Cores RGB na API Google Sheets usam valores 0-1, não 0-255. Exemplo: vermelho = {red: 1, green: 0, blue: 0}
💡 Dica 2: Combine formatação com dados: primeiro escreva com SHEETS_WRITE, depois formate com SHEETS_FORMAT.
Próximo Node
→ SHEETS_WRITE - Escrever dados primeiro → SHEETS_BATCH_UPDATE - Múltiplas operações