A função SCAN no Excel é utilizada para aplicar uma operação a uma lista de valores, acumulando os resultados ao longo do caminho. Ela é particularmente útil em situações onde você precisa de cálculos iterativos ou acumulados sobre um conjunto de dados. A sintaxe básica da função SCAN é a seguinte:
SCAN(valor_inicial, array, lambda(acumulador, valor) expressão_de_cálculo)
- valor_inicial: Este é o valor inicial para a operação de acumulação. Pode ser zero ou qualquer outro valor inicial que faça sentido para o cálculo.
- array: O intervalo ou array de valores sobre o qual você deseja realizar a operação.
- lambda(acumulador, valor): Esta é uma função LAMBDA personalizada onde você define como os valores devem ser acumulados. A função LAMBDA recebe dois parâmetros: o acumulador (ou seja, o resultado acumulado até esse ponto) e o valor atual do array.
Exemplo de uso:
Vamos supor que você tem uma lista de números e deseja calcular um acumulado cumsum (soma acumulada) dos valores em um intervalo:
=SCAN(0, A1:A5, LAMBDA(acumulado, valor, acumulado + valor))
- Suponha que os números estejam em `A1:A5`.
- Use a função SCAN para calcular a soma acumulada:
Neste exemplo:
- `0` é o valor inicial de acumulação.
- `A1:A5` é o intervalo de valores.
- `LAMBDA(acumulado, valor, acumulado + valor)` define que a operação para cada elemento será adicionar o valor atual ao acumulado.
Como funciona:
- Para o primeiro valor em `A1`, o acumulador começa em 0 e simplesmente retorna `0 + A1`.
- Para o segundo valor em `A2`, ele pega o resultado do primeiro cálculo e adiciona `A2` a ele, e assim por diante.
A função SCAN é bastante poderosa e pode ser utilizada para várias outras operações que exigem cálculos iterativos ou acumulados. Lembrando que, para usar funções LAMBDA e SCAN, é necessário ter uma versão do Excel que suporte essas funções, como o Microsoft 365.