Planilhas
O componente Planilha coloca uma grade no estilo Excel/CSV dentro da página — com direito a fórmulas. É útil tanto para exibir uma tabela quanto para montar telas que se comportam como uma planilha de verdade.
Carregando os dados
Há duas formas de trazer os dados:
- Upload de arquivo — envie um
.xlsxou.csv. É a forma mais comum. - Por URL — carrega a planilha de um endereço.
A planilha também suporta múltiplas abas (sheets).
Aparência
Nas propriedades você ajusta como a grade aparece:
- Mostrar/ocultar colunas.
- Estilo: tamanho da fonte, alinhamento, exibir números de linha, exibir letras de coluna e listras (zebra) para facilitar a leitura.
Fórmulas
As células aceitam fórmulas, como no Excel. É isso que torna a planilha mais do que uma tabela estática — ela pode calcular.
O Workplayer tem o seu próprio motor de fórmulas — ele não é o Google Sheets. Uma parte das funções funciona, outra não. Vale conhecer a lista antes de montar uma planilha complexa.
Funções que funcionam
| Função | Para quê |
|---|---|
FILTER | Devolve todos os valores de uma coluna que atendem a uma ou mais condições |
INDEX + MATCH | Busca "ao contrário": acha a linha por uma coluna e devolve o valor de outra |
VLOOKUP / PROCV, HLOOKUP / PROCH | Busca clássica, quando a chave está na primeira coluna |
IFERROR / SEERRO, IFNA | Troca um erro por um valor seu (normalmente "") |
COUNTIF, COUNTIFS, SUMIFS | Contagens e somas com condição |
SMALL, LARGE | O n-ésimo menor / maior valor |
FILTER funciona entre abas e derrama (spill) o resultado para baixo:
=IFERROR(FILTER(promotoras!B:B, promotoras!D:D = "PROMOTORA"), "")
:::tip Só escreva a fórmula na primeira célula
O FILTER preenche sozinho as células de baixo, mas só as que estiverem vazias. Se você
copiar a mesma fórmula para toda a coluna, cada célula devolve apenas o primeiro resultado.
Escreva na primeira e apague o resto da coluna.
:::
A comparação de texto ignora maiúsculas/minúsculas e espaços nas pontas — "LOJISTA",
"lojista" e " Lojista " são a mesma coisa, como no Sheets.
O que ainda não funciona: fórmulas matriciais
Fórmulas que dependem de matrizes (as Ctrl+Shift+Enter do Excel) não são suportadas.
O sinal mais fácil de reconhecer é o uso de ROW() como contador:
❌ =IFERROR(INDEX(A:A, SMALL(IF(B:B="X", ROW(A:A)-ROW(A$2)+1), ROW(A1))), "")
Também não funcionam: IF recebendo um intervalo inteiro, COUNTIFS com um intervalo no lugar
do critério, e multiplicação de condições — (A:A="X") * (B:B="Y").
Reescreva usando FILTER, que faz a mesma coisa e é bem mais legível:
✅ =IFERROR(FILTER(A:A, B:B = "X"), "")
:::note Quando a fórmula não roda
Se o motor não consegue calcular, a célula mostra o último valor salvo pela planilha de origem
em vez de um erro. Por isso uma fórmula não suportada às vezes parece funcionar — o número na
tela é uma foto antiga, que não se atualiza. Se a origem não tiver valor salvo, aparece
#ERROR.
:::
Juntando dados de abas diferentes
FILTER não faz "junção" entre abas. Para cruzar duas abas, crie uma coluna auxiliar na
planilha de origem (no próprio Google Sheets, onde tudo é suportado) e filtre por ela:
Na aba promotoras, coluna M: =IFERROR(XLOOKUP(A2, alocacao!B:B, alocacao!Q:Q), "")
Na Planilha do Workplayer:
=IFERROR(FILTER(promotoras!B:B,
promotoras!D:D = "PROMOTORA",
promotoras!M:M = INDEX(redes!A:A, MATCH(K2, redes!C:C, 0))), "")
Referência de célula (o recurso mais poderoso)
Quando há uma Planilha na página, alguns campos ganham a opção Referenciar célula:
- Um campo de Texto ou Número pode ser ligado a uma célula (por exemplo,
A1). - As opções de um campo de Seleção podem vir de células da planilha.
Um campo ligado a uma célula funciona em três modos, dependendo do que mais você configurar nele:
1. Só a referência — espelho de mão dupla
O valor da célula — incluindo o resultado de fórmulas — aparece no campo. Se o campo estiver interativo (edição ligada), vale também o caminho inverso: o que o usuário digita vai para a célula, e as fórmulas que dependem dela recalculam na hora. É isso que permite montar formulários que se comportam como uma planilha em tempo real: calculadoras, simuladores, orçamentos que recalculam sozinhos, etc.
2. Referência + Expressão — a expressão comanda a célula
Se o campo também tiver uma expressão, o resultado da expressão é escrito na célula — e reescrito sempre que a expressão mudar (por exemplo, quando o usuário digita em outro campo usado nela). O campo fica somente leitura: quem manda nele é a expressão.
É o jeito de levar {{ $user.username }}, {{ $args.X }} ou o valor de outro campo
para dentro da planilha, reativamente.
Um campo com expressão ignora o Valor Padrão e fica somente leitura, mesmo com a edição ligada.
3. Referência + Valor Padrão — semeia a célula e libera a edição
Se o campo tiver um Valor Padrão (que também aceita {{ }}), ele é resolvido uma
única vez, quando a planilha termina de carregar, e escrito na célula — substituindo
o que ela tinha. Depois disso, o campo se comporta como o modo 1: o usuário edita à
vontade. É o jeito de pré-preencher a célula sem travar o campo.
Se o Valor Padrão resolver vazio (por exemplo, se referencia um campo que ainda não foi preenchido), nada é escrito — a célula mantém o valor original.
Uma expressão que escreve numa célula da qual ela mesma depende (direto ou através de fórmulas) cria um ciclo sem fim — o mesmo problema de uma referência circular no Excel. Evite.
Só é possível escrever na célula através de um campo ligado a ela — o usuário não edita a célula diretamente na grade. A planilha mostra o conteúdo (e o resultado das fórmulas), mas a entrada de dados acontece pelos campos referenciando as células, não digitando na célula em si.
A referência de célula é o recurso que mais rende com planilhas: combine campos ligados a células + fórmulas e você tem uma "mini-planilha interativa" dentro do workflow, sem escrever nenhuma expressão.
Opções de Seleção vindas da planilha
Cada opção de um campo de Seleção pode ser ligada a uma célula: escolha a planilha
na opção e digite o endereço (por exemplo, B5). O texto da opção passa a ser o valor
daquela célula.
Mas o mais prático são os atalhos de intervalo. No campo de endereço da opção, em vez de uma célula única, você pode digitar:
| O que digitar | O que acontece |
|---|---|
A | Uma opção para cada célula preenchida da coluna A |
3 | Uma opção para cada célula preenchida da linha 3 |
A2:A9 | Uma opção para cada célula do intervalo |
Ou seja: uma única opção configurada com B2:B40 vira um dropdown com todos os
produtos daquela faixa — sem digitar nada à mão.
Alguns detalhes úteis:
- Células vazias são ignoradas — o dropdown não ganha opções em branco.
- As opções seguem a ordem da planilha (de cima para baixo, da esquerda para a direita).
- Ao enviar o formulário, o valor registrado é o texto da célula escolhida.
- Dá para misturar no mesmo seletor: opções fixas digitadas à mão + uma opção de intervalo. Cada uma expande no seu lugar.
- Como o dropdown lê as células já calculadas, intervalos sobre colunas de fórmula também funcionam — e acompanham os recálculos.
A pega todas as células preenchidas da coluna — inclusive a linha 1 (o
cabeçalho). Se você não quiser o cabeçalho no dropdown, use um intervalo começando na
linha 2, como A2:A99.
Usando valores da planilha em expressões
Também dá para ler uma célula diretamente por expressão,
usando o endereço no estilo A1:
{{ $form.Minha_Planilha.A1 }}
Assistente de IA
A planilha tem um assistente de IA: descreva o que você quer e ele cria ou ajusta a planilha para você. Há também a opção de esconder a planilha da tela (útil quando ela serve só de "motor" de cálculo por trás dos campos ligados às células).