LAMBDA e LET são duas das funções mais transformadoras já adicionadas ao Excel. Elas trazem conceitos de programação — funções reutilizáveis e variáveis — diretamente para a grade de fórmulas, sem precisar de VBA. Disponíveis no Microsoft 365.
LET: definindo variáveis dentro de fórmulas
=LET(nome1; valor1; nome2; valor2; ...; fórmula_final)
LET permite dar nomes a cálculos intermediários e reutilizá-los, eliminando repetições e tornando fórmulas longas mais legíveis.
Sem LET (cálculo repetido 3 vezes):
=SE(SOMA(B2:B100)/COUNT(B2:B100)>1000;
SOMA(B2:B100)/COUNT(B2:B100)*1,1;
SOMA(B2:B100)/COUNT(B2:B100)*0,9)
Com LET:
=LET(
media; SOMA(B2:B100)/COUNT(B2:B100);
SE(media > 1000; media * 1,1; media * 0,9)
)
Além da legibilidade, o Excel calcula media apenas uma vez — mais eficiente.
LAMBDA: criando funções reutilizáveis
=LAMBDA(parâm1; parâm2; ...; fórmula)
LAMBDA define uma função. Mas para ser realmente útil, você precisa salvá-la como nome (em Gerenciador de Nomes):
- Fórmulas → Gerenciador de Nomes → Novo
- Nome:
CalculaBônus - Refere-se a:
=LAMBDA(vendas; meta; SE(vendas >= meta; vendas * 0,1; 0))
Agora você pode usar =CalculaBônus(B2; C2) em qualquer célula da pasta de trabalho, como se fosse uma função nativa.
Exemplo prático: função de limpeza de texto
=LAMBDA(texto;
ARRUMAR(LIMPAR(MAIÚSCULA(texto)))
)
Salva como LimpaTexto. Uso: =LimpaTexto(A2). Aplica LIMPAR + ARRUMAR + MAIÚSCULA em uma única chamada legível.
LAMBDA recursiva
LAMBDA suporta recursão — a função pode chamar a si mesma — usando a função auxiliar LAMBDA.AUTO. Isso permite implementar algoritmos complexos que não são possíveis com funções nativas:
=LAMBDA(n; SE(n <= 1; 1; n * LAMBDA.AUTO(n-1)))
Esta função calcula o fatorial de n recursivamente.
Perguntas frequentes
LAMBDAs criadas em uma pasta de trabalho funcionam em outras?
Não. As LAMBDAs são armazenadas no Gerenciador de Nomes de cada arquivo. Para compartilhar, exporte os nomes manualmente ou use um arquivo de biblioteca que outros importam.
LET e LAMBDA são mais lentos que fórmulas normais?
LET é mais rápido (evita recálculos duplicados). LAMBDA tem desempenho similar às funções nativas quando não usa recursão. Recursão profunda pode ser lenta.