Diretrizes e exemplos de fórmulas de matriz
Applies ToExcel para Microsoft 365 Excel para Microsoft 365 para Mac Excel 2024 Excel 2024 para Mac Excel 2021 Excel 2021 para Mac Excel 2019 Excel 2016 Excel para iPad Excel para iPhone

Uma fórmula de matriz é aquela capaz de executar vários cálculos em um ou mais itens de uma matriz. Você pode considerar uma matriz como uma linha ou coluna de valores ou uma combinação de linhas e colunas de valores. As fórmulas de matriz podem retornar vários resultados ou um único resultado.

A partir da atualização de setembro de 2018 do Microsoft 365, qualquer fórmula que possa retornar vários resultados os despejará automaticamente para células vizinhas laterais ou abaixo. Essa alteração de comportamento também é acompanhada por várias novas funções de matriz dinâmica. Fórmulas de matriz dinâmica, se elas estão usando funções existentes ou funções de matriz dinâmica, só precisam ser entradas em uma única célula e confirmar pressionando Enter. Anteriormente, as fórmulas de matriz herdada exigem primeiro que você selecione todo o intervalo de saída e confirme a fórmula com Ctrl+Shift+Enter. Elas são normalmente chamadas de fórmulas CSE.

Você pode usar fórmulas de matriz para executar tarefas complexas, como:

  • Criar conjuntos de dados de exemplo rapidamente.

  • Contar o número de caracteres contidos em um intervalo de células.

  • Somar apenas números que atendam a certas condições, como os valores mais baixos de um intervalo ou números que estejam entre um limite superior e inferior.

  • Somar todo valor N em um intervalo de valores.

Os exemplos a seguir mostram como criar fórmulas de matriz com várias células e com uma célula. Sempre que possível, incluímos exemplos com algumas das funções de matriz dinâmicas, bem como fórmulas de matriz existentes inseridas como matrizes dinâmicas e herdada.

Baixar nossos exemplos

Baixe uma pasta de trabalho de exemplo com todos os exemplos de fórmula de matriz neste artigo.

Este exercício mostra como usar fórmulas de matriz de várias células e de uma célula para calcular um conjunto de estatísticas de vendas. O primeiro conjunto de etapas usa uma fórmula de várias células para calcular um conjunto de subtotais. O segundo conjunto usa uma fórmula de uma célula para calcular um total geral.

  • Fórmula de matriz de várias células

    Função de matriz com várias células na célula H10 =F10:F19*G10:G19 para calcular o número de carros vendidos pelo preço unitário

  • Aqui estamos calculando o Total de Vendas de coupes e sedans para cada vendedor inserindo =F10:F19*G10:G19 na célula H10.

    Ao pressionar Enter, você verá os resultados despejados para as células H10:H19. Observe que o intervalo de despejo é realçado com uma borda quando você seleciona qualquer célula dentro do intervalo. Você também pode notar que as fórmulas nas células H10:H19 estão acinzentadas. Elas estão apenas ali para referência, portanto, se você quiser ajustar a fórmula, será necessário selecionar a célula H10, onde está a fórmula mestra.

  • Fórmula de matriz com uma célula

    Fórmula de matriz de célula única para calcular um total geral com =SOMA(F10:F19*G10:G19)

    Na célula H20 da pasta de trabalho de exemplo, digite ou copie e cole =SOMA(F10:F19*G10:G19)e pressione Enter.

    Nesse caso, o Excel multiplica os valores da matriz (o intervalo de células F10 a G19) e usa a função SOMA para somar os totais. O resultado é um total geral de R$ 1.590.000,00 em vendas.

    Esse exemplo mostra como esse tipo de fórmula pode ser eficiente. Por exemplo, vamos supor que você tenha 1.000 linhas de dados. Você pode somar esses dados no todo ou em parte, criando uma fórmula de matriz em uma única célula, em vez de arrastar a fórmula pelas 1.000 linhas. Além disso, observe que a fórmula de uma célula na célula H20 é totalmente independente da fórmula de várias células (a fórmula nas células H10 a H19). Esta é outra vantagem de usar fórmulas de matriz: flexibilidade. Você pode alterar as outras fórmulas na coluna H sem afetar a fórmula em H20. Também pode ser uma boa prática ter totais independentes como esse, pois ajuda a validar a precisão dos seus resultados.

  • As fórmulas de matriz dinâmicas também oferecem estas vantagens:

    • Consistência    Se clicar em qualquer uma das células de H10 para baixo, você verá a mesma fórmula. Essa consistência pode ajudar a garantir mais precisão.

    • Segurança    Não é possível substituir um componente de uma fórmula de matriz com várias células. Por exemplo, clique na célula H11 e pressione Delete. O Excel não alterará a saída da matriz. Para alterá-la, você precisa selecionar a célula superior esquerda da matriz ou a célula H10.

    • Arquivos menores    Você pode usar uma única fórmula de matriz em vez de várias fórmulas intermediárias. Por exemplo, o exemplo de vendas de carro usa uma fórmula de matriz para calcular os resultados na coluna E. Se tivesse usado fórmulas padrão como =F10*G10, F11*G11, F12*G12, etc., você teria usado 11 fórmulas diferentes para calcular os mesmos resultados. Isso não é grande coisa, mas e se você tivesse milhares de linhas no total? Isso pode fazer uma grande diferença.

    • Eficiência    As funções de matriz podem ser uma maneira eficiente de criar fórmulas complexas. A fórmula de matriz =SOMA(F10:F19*G10:G19) é a mesma que: =SOMA(F10*G10,F11*G11,F12*G12,F13*G13,F14*G14,F15*G15,F16*G16,F17*G17,F18*G18,F19*G19).

    • Despejar    As fórmulas de matriz dinâmicas serão automaticamente despejadas no intervalo de saída. Se seus dados de origem estão em uma tabela do Excel, as fórmulas de matriz dinâmicas serão redimensionadas automaticamente à medida que você adicionar ou remover dados.

    • Erro #DESPEJAR!    As matrizes dinâmicas introduziram o Erro #DESPEJAR!, que indica que o intervalo de despejo pretendido está bloqueado por algum motivo. Quando você resolver o bloqueio, a fórmula despejará automaticamente.

As constantes de matriz são um componente das fórmulas de matriz. Para criar essas constantes, insira uma lista de itens e coloque-a entre chaves ({ }) manualmente, da seguinte maneira:

={1\2\3\4\5} ou ={"Janeiro"\"Fevereiro"\"Março"}

Se você separar os itens com vírgulas, será criada uma matriz horizontal (uma linha). Se você separar os itens com ponto-e-vírgulas, será criada uma matriz vertical (uma coluna). Para criar uma matriz bidimensional, delimite os itens em cada linha com vírgulas e delimite cada linha com ponto-e-vírgulas.

Os procedimentos a seguir oferecem alguma prática na criação de constantes horizontais, verticais e bidimensionais. Mostraremos exemplos usando a função SEQUÊNCIA para gerar constantes de matriz automaticamente, bem como constantes de matriz inseridas manualmente.

  • Criar uma constante horizontal

    Use a pasta de trabalho dos exemplos anteriores ou crie uma nova pasta de trabalho. Selecione qualquer célula vazia e insira =SEQUÊNCIA(1;5). A função SEQUÊNCIA cria uma matriz de 1 linha por 5 colunas igual a ={1\2\3\4\5}. O seguinte resultado será exibido:

    Crie uma constante de matriz horizontal com =SEQUÊNCIA(1;5) ou ={1;2;3;4;5}

  • Criar uma constante vertical

    Selecione qualquer célula em branco com espaço abaixo dela e insira =SEQUÊNCIA(5)ou ={1;2;3;4;5}. O seguinte resultado será exibido:

    Crie uma constante de matriz vertical com =SEQUÊNCIA(5), ou ={1;2;3;4;5}

  • Criar uma constante bidimensional

    Selecione qualquer célula em branco com espaço à direita e abaixo dela e insira =SEQUÊNCIA(3,4). O seguinte resultado será exibido:

    Crie uma constante de matriz de 3 linhas por 4 colunas com =SEQUÊNCIA(3;4)

    Você também pode inserir: ou ={1\2\3\4;5\6\7\8;9\10\11\12}, mas preste atenção onde coloca ponto e vírgula em vez de vírgulas.

    Como você pode ver, a opção SEQUÊNCIA oferece vantagens significativas ao inserir manualmente os valores constantes de matriz. Principalmente, isso poupa tempo, mas também pode ajudar a reduzir erros da entrada manual. Também é mais fácil de ler, especialmente porque ponto e vírgula pode ser difícil distinguir dos separadores de vírgula.

Veja um exemplo que usa constantes de matriz como parte de uma fórmula maior. Na pasta de trabalho de exemplo, vá para a planilha Constante em uma fórmula ou crie uma nova planilha.

Na célula D9, inserimos =SEQUÊNCIA(1,5,3,1); mas você também poderia inserir 3, 4, 5, 6 e 7 nas células A9:H9. Não há nada especial nessa seleção de número específica, apenas escolhemos algo diferente de 1 a 5 para diferenciação.

Na célula E11, insira =SOMA(D9:H9*SEQUÊNCIA(1,5))ou =SOMA(D9:H9*{1\2\3\4\5}). As fórmulas retornam 85.

Use constantes em fórmulas. Neste exemplo, utilizamos =SOMA(D9:H(*SEQUÊNCIA(1;5))

A função SEQUÊNCIA cria o equivalente da constante de matriz {1\2\3\4\5}. Como o Excel executa as operações entre parênteses primeiro, os dois próximos elementos a serem considerados são os valores de célula em D9:H9 e o operador de multiplicação (*). Neste ponto, a fórmula multiplica os valores da matriz armazenada pelos valores correspondentes da constante. Isso equivale a:

=SOMA(D9*1,E9*2,F9*3,G9*4,H9*5)ou =SOMA(3*1,4*2,5*3,6*4,7*5)

Por fim, a função SOMA soma os valores e retorna 85.

Para evitar o uso da matriz armazenada e manter a operação totalmente na memória, você pode substituí-la por outra constante de matriz:

=SOMA(SEQUÊNCIA(1,5,3,1)*SEQUÊNCIA(1,5))ou =SOMA({3\4\5\6\7}*{1\2\3\4\5})

Elementos que podem ser usados em constantes de matriz

  • As constantes de matriz podem conter números, texto, valores lógicos (como VERDADEIRO e FALSO) e valores de erro como #N/A. Você pode usar números nos formatos inteiro, decimal e científico. Se você incluir texto, será necessário colocá-lo entre aspas ("texto").

  • As constantes de matriz não podem conter outras matrizes, fórmulas ou funções. Em outras palavras, elas só podem conter texto ou números separados por vírgula ou ponto-e-vírgula. O Excel exibirá uma mensagem de aviso quando você inserir uma fórmula como {1\2\A1:D4} ou {1\2\SOMA(Q2:Z8)}. Além disso, valores numéricos não podem conter sinais de percentual, cifrões, vírgulas ou parênteses.

O melhor modo de usar constantes de matriz é nomeá-las. As constantes nomeadas podem ser mais fáceis de usar e ocultam um pouco da complexidade das fórmulas de matriz. Para nomear uma constante de matriz e usá-la em uma fórmula, siga este procedimento:

Vá para Fórmulas > Nomes Definidos > Definir Nome. Na caixa Nome, digite Trimestre1. Na caixa Refere-se a, insira a seguinte constante (lembre-se de digitar as chaves manualmente):

={"Janeiro"\"Fevereiro"\"Março"}

A caixa de diálogo agora deve ter esta aparência:

Adicione uma constante de matriz nomeada a partir de Fórmulas > Nomes Definidos > Gerenciador de Nomes > Novo

Clique OK e selecione qualquer linha com três células em branco e insira =Trimestre1.

O seguinte resultado será exibido:

Use uma constante de matriz nomeada em uma fórmula, como =Trimestre1, onde Trimestre1 foi definido como ={"Janeiro","Fevereiro","Março"}

Se você quiser que os resultados despejem verticalmente em vez de horizontalmente, você pode usar =TRANSPOR(Trimestre1).

Se você quiser exibir uma lista de 12 meses, como você poderia usar ao criar uma demonstração financeira, poderá basear uma no ano atual com a função SEQUÊNCIA. O mais legal desta função é que, mesmo que apenas o mês seja exibido, há uma data válida por trás dela que você pode usar em outros cálculos. Você encontrará estes exemplos nas planilhas constante de matriz nomeada e conjunto de dados de exemplo na pasta de trabalho de exemplo.

=TEXTO(DATA(ANO(HOJE());SEQUÊNCIA(1,12),1),"mmm")

Use uma combinação das funções TEXTO, DATA, ANO, HOJE e SEQUÊNCIA para criar uma lista dinâmica de 12 meses

Isso usa a função DATA para criar uma data com base no ano atual, a SEQUÊNCIA cria uma constante de matriz de 1 a 12 para janeiro a dezembro, em seguida, a função TEXTO converte o formato de exibição em "mmm" (jan, fev, mar, etc.). Se você quisesse exibir o nome completo do mês, como janeiro, usaria "mmmm".

Quando você usar uma constante nomeada como uma fórmula de matriz, lembre-se de inserir o sinal de igual, como em =Trimestre1, não apenas Trimestre1. Caso contrário, o Excel interpretará a matriz como uma cadeia de texto, e a fórmula não funcionará conforme esperado. Por fim, lembre-se de que você pode usar combinações de texto e números. Tudo depende do quão criativo deseja ser.

Os exemplos a seguir demonstram algumas das formas pelas quais você pode colocar constantes de matriz para utilização em fórmulas de matriz. Alguns dos exemplos usam a função TRANSPOR para converter linhas em colunas e vice-versa.

  • Multiplicar cada item em uma matriz

    Insira =SEQUÊNCIA(1,12)*2ou ={1\2\3\4;5\6\7\8;9\10\11\12}*2

    Você também pode dividir com (/), adicionar com (+) e subtrair com (-).

  • Elevar os itens de uma matriz ao quadrado

    Insira =SEQUÊNCIA(1,12)^2ou ={1\2\3\4;5\6\7\8;9\10\11\12}^2

  • Encontrar a raiz quadrada de itens quadrados em uma matriz

    Insira =RAIZ(SEQUÊNCIA(1,12)^2)ou =RAIZ({1\2\3\4;5\6\7\8;9\10\11\12}^2)

  • Transpor uma linha unidimensional

    Insira =TRANSPOR(SEQUÊNCIA(1,5))ou =TRANSPOR({1\2\3\4\5})

    Embora você tenha inserido uma constante de matriz horizontal, a função TRANSPOR converterá a constante de matriz em uma coluna.

  • Transpor uma coluna unidimensional

    Insira =TRANSPOR(SEQUÊNCIA(5,1)), ou =TRANSPOR({1;2;3;4;5})

    Embora você tenha inserido uma constante de matriz vertical, a função TRANSPOR converterá a constante em uma linha.

  • Transpor uma constante bidimensional

    Insira =TRANSPOR(SEQUÊNCIA(3,4))ou =TRANSPOR({1\2\3\4;5\6\7\8;9\10\11\12})

    A função TRANSPOR converterá cada linha em uma série de colunas.

Esta seção contém exemplos de fórmulas de matriz básicas.

  • Criar uma matriz com base em valores existentes

    O exemplo a seguir explica como usar fórmulas de matriz para criar uma nova matriz a partir de uma matriz existente.

    Insira =SEQUÊNCIA(3,6,10,10)ou ={10\20\30\40\50\60;70\80\90\100\110\120;130\140\150\160\170\180}

    Não deixe de digitar { (chave de abertura) antes de digitar 10 e } (chave de fechamento) depois de digitar 180, pois você está criando uma matriz de números.

    Em seguida, insira =D9# ou =D9:I11 em uma célula em branco. Uma matriz de células de 3 x 6 é exibida com os mesmos valores que você vê em D9:D11. O sinal # é chamado operador de intervalo de despejoe é uma maneira do Excel referenciar o intervalo de matriz inteiro em vez de ter que digitá-lo.

    Use o operador de intervalo de despejo (#) para fazer referência a uma matriz existente

  • Criar uma constante de matriz com base em valores existentes

    Você pode pegar os resultados de uma fórmula de matriz despejada e convertê-los em seus componentes. Selecione a célula D9 e pressione F2 para alternar para o modo de edição. Em seguida, pressione F9 para converter as referências de célula em valores, que o Excel converte em uma constante de matriz. Quando você pressiona Enter, a fórmula =D9# agora deve ser ={10\20\30;40\50\60;70\80\90}.

  • Contar caracteres em um intervalo de células

    O exemplo a seguir mostra como contar o número de caracteres em um intervalo de células. Isso inclui espaços.

    Conte o número total de caracteres em um intervalo e outras matrizes para trabalhar com cadeias de texto

    =SOMA(NÚM.CARACT(C9:C13))

    Neste caso, a função NÚM.CARACT retornará o comprimento de cada cadeia de texto em cada uma das células do intervalo. Em seguida, a função SOMA soma esses valores e exibe o resultado (66). Se quiser obter a média do número de caracteres, você pode usar:

    =MÉDIA(NÚM.CARACT(C9:C13))

  • Conteúdo da maior célula do intervalo C9:C13

    =ÍNDICE(C9:C13,CORRESP(MÁXIMO(NÚM.CARACT(C9:C13)),NÚM.CARACT(C9:C13),0),1)

    Esta fórmula só funcionará quando um intervalo de dados contiver uma única coluna de células.

    Vamos examinar mais detalhadamente a fórmula, começando dos elementos internos para os externos. A função NÚM.CARACT retorna o comprimento de cada um dos itens no intervalo de células D2:D6. A função MÁXIMO calcula o maior valor entre esses itens, que corresponde à maior cadeia de texto, que está na célula D3.

    É neste ponto que as coisas ficam um pouco mais complexas. A função CORRESP calcula o deslocamento (a posição relativa) da célula que contém a cadeia de texto mais longa. Para fazer isso, são necessários três argumentos: um valor de pesquisa, uma matriz de pesquisa e um tipo de correspondência. A função CORRESP procura na matriz de pesquisa o valor de pesquisa especificado. Neste caso, o valor de pesquisa é a cadeia de texto mais longa:

    MÁXIMO(NÚM.CARACT(C9:C13)

    e essa cadeia de caracteres reside nesta matriz:

    NÚM.CARACT(C9:C13)

    O argumento do tipo de combinação, nesse caso, é 0. O tipo de correspondência pode ser um valor 1, 0 ou -1.

    • 1: retorna o maior valor que é menor que ou igual ao valor de pesquisa

    • 0: retorna o primeiro valor exatamente igual ao valor de pesquisa

    • -1: retorna o menor valor que é maior que ou igual ao valor de pesquisa especificado

    • Se você omitir um tipo de correspondência, o Excel adotará o valor 1.

    Por fim, a função ÍNDICE opera com estes argumentos: uma matriz e um número de linha e de coluna nessa matriz. O intervalo de células C9:C13 fornece a matriz, a função CORRESP fornece o endereço da célula e o argumento final (1) especifica que o valor vem da primeira coluna da matriz.

    Se você quiser obter o conteúdo da menor cadeia de texto, substitua MÁXIMO no exemplo acima por MÍNIMO.

  • Localizar os n menores valores de um intervalo

    Este exemplo mostra como encontrar os três menores valores de um intervalo de células, onde uma matriz de dados de exemplo nas células B9:B18 foi criada com: =INT(MATRIZALEATÓRIA(10,1)*100). Observe que MATRIZALEATÓRIA é uma função imprevisível, portanto, você obterá um novo conjunto de números aleatórios sempre que o Excel calcular.

    Fórmula de matriz do Excel para encontrar o menor valor enésimo: =MENOR(B9#;SEQUÊNCIA(D9))

    Insira =MENOR(B9#,SEQUÊNCIA(D9), =MENOR(B9:B18,{1;2;3})

    Essa fórmula usa uma constante de matriz para avaliar a função MENOR três vezes e retornar os menores 3 membros na matriz que estão contidos nas células B9:B18, onde 3 é um valor variável na célula D9. Para encontrar mais valores, você pode aumentar o valor na função SEQUÊNCIA ou adicionar mais argumentos à constante. Você também pode usar funções adicionais com essa fórmula, como SOMA ou MÉDIA. Por exemplo:

    =SOMA(MENOR(B9#;SEQUÊNCIA(D9))

    =MÉDIA(MENOR(B9#;SEQUÊNCIA(D9))

  • Localizar os n maiores valores de um intervalo

    Para localizar os maiores valores de um intervalo, você pode substituir a função MENOR pela função MAIOR. Além disso, o exemplo a seguir usa as funções LIN e INDIRETO.

    Insira =MAIOR(B9#,LIN(INDIRETO("1:3")))ou =MAIOR(B9:B18,LIN(INDIRETO("1:3")))

    Neste ponto, pode ser útil saber um pouco sobre as funções LIN e INDIRETO. Você pode usar a função LINHA para criar uma matriz de números inteiros consecutivos. Por exemplo, selecione um vazio e insira:

    =LINHA(1:10)

    A fórmula cria uma coluna de 10 inteiros consecutivos. Para ver um possível problema, insira uma linha acima do intervalo que contém a fórmula de matriz (ou seja, acima da linha 1). O Excel ajusta as referências de linha e a fórmula agora gera números inteiros de 2 a 11. Para corrigir esse problema, adicione a função INDIRETO à fórmula:

    =LIN(INDIRETO("1:10"))

    A função INDIRETO usa cadeias de caracteres de texto como argumentos (e é por isso que o intervalo 1:10 está entre aspas). O Excel não ajusta valores de texto quando você insere linhas ou move a fórmula de matriz. Como resultado, a função LIN sempre gera a matriz de números inteiros desejada. Você poderia facilmente usar SEQUÊNCIA:

    =SEQUÊNCIA(10)

    Vamos examinar a fórmula que você usou anteriormente — =MAIOR(B9#,LIN(INDIRETO("1:3"))) — começando pelos parênteses internos e indo para fora: a função INDIRETO retorna um conjunto de valores de texto, nesse caso os valores de 1 a 3. A função LIN, por sua vez, gera uma matriz de coluna de três células. A função MAIOR usa os valores no intervalo de células B9:B18 e é avaliada três vezes, uma vez para cada referência retornada pela função LIN. Se quiser encontrar mais valores, adicione um maior intervalo de células à função INDIRETO. Para concluir, assim como nos exemplos de MENOR, você pode usar essa fórmula com outras funções, como SOMA e MÉDIA.

  • Somar um intervalo que contém valores de erro

    A função SOMA do Excel não funciona quando você tenta somar um intervalo que contém um valor de erro, como #VALOR! ou #N/A. Este exemplo mostra como somar os valores em um intervalo chamado Dados que contém erros:

    Use matrizes para lidar com erros. Por exemplo, =SOMA(SE(ÉERRO(Dados),"",Dados) somará o intervalo denominado Dados mesmo que inclua erros, como #VALOR! ou #N/D!.

  • =SOMA(SE(ÉERROS(Dados),"",Dados))

    A fórmula cria uma nova matriz contendo os valores originais menos quaisquer valores de erro. Das funções internas para as externas, a função ÉERROS pesquisa o intervalo de células (Dados) em busca de erros. A função SE retornará um valor específico se uma condição especificada for avaliada como VERDADEIRO e outro valor se ela for avaliada como FALSO. Neste caso, ela retorna cadeias de caracteres vazias ("") para todos os valores de erro, pois eles são avaliados como VERDADEIRO, e retorna os valores restantes do intervalo (Dados), pois eles são avaliados como FALSO, o que significa que eles não contêm valores de erro. Em seguida, a função SOMA calcula o total da matriz filtrada.

  • Contar o número de valores de erro em um intervalo

    Este exemplo é como a fórmula anterior, mas retorna o número de valores de erro em um intervalo chamado Dados em vez de filtrá-los:

    =SOMA(SE(ÉERROS(Dados),1,0))

    Essa fórmula cria uma matriz contendo o valor 1 para as células que contêm erros e o valor 0 para as que não contêm erros. Você pode simplificar a fórmula e obter o mesmo resultado removendo o terceiro argumento da função SE, da seguinte maneira:

    =SOMA(SE(ÉERROS(Dados),1))

    Se você não especificar o argumento, a função SE retornará FALSO se uma célula não contiver um valor de erro. Você pode simplificar a fórmula ainda mais:

    =SOMA(SE(ÉERROS(Dados)*1))

    Essa versão funciona porque VERDADEIRO*1=1 e FALSO*1=0.

Talvez seja necessário somar valores com base em condições.

Você pode usar matrizes para calcular com base em determinadas condições. =SOMA(SE(Vendas>0;Vendas)) somará todos os valores maiores que 0 em um intervalo chamado Vendas.

Por exemplo, esta fórmula de matriz soma apenas os inteiros positivos em um intervalo chamado Vendas, que representa as células E9:E24 no exemplo acima:

=SOMA(SE(Vendas>0,Vendas))

A função SE cria uma matriz de valores positivos e falsos. A função SOMA essencialmente ignora os falsos valores, pois 0+0=0. O intervalo de células que você usa nessa fórmula pode consistir em qualquer número de linhas e colunas.

Você também pode somar valores que atendam a mais de uma condição. Por exemplo, esta fórmula de matriz calcula valores maiores que 0 E menores que 2500:

=SOMA((Vendas>0)*(Vendas<2500)*(Vendas))

Lembre-se de que essa fórmula retornará um erro se o intervalo contiver uma ou mais células não numéricas.

Você também pode criar fórmulas de matriz que usem um tipo de condição OU. Por exemplo, você pode somar valores maiores que 0 OU menores que 2500:

=SOMA(SE((Vendas>0)+(Vendas<2500),Vendas))

Não é possível usar as funções E e OU diretamente em fórmulas de matriz, pois essas funções retornam um único resultado, VERDADEIRO ou FALSO, e as funções de matriz exigem matrizes de resultados. Você pode contornar o problema usando a lógica mostrada na fórmula anterior. Em outras palavras, você executa operações matemáticas, como adição ou multiplicação, em valores que atendam à condição OU ou E.

Este exemplo mostra como remover zeros de um intervalo quando você precisar calcular a média dos valores desse intervalo. A fórmula usa um intervalo de dados chamado Vendas:

=MÉDIA(SE(Vendas<>0,Vendas))

A função SE cria uma matriz de valores que não são iguais a 0 e passa esses valores para a função MÉDIA.

Esta fórmula de matriz compara os valores de dois intervalos de células chamados MeusDados e SeusDados e retorna o número de diferenças entre os dois. Se o conteúdo dos dois intervalos for idêntico, a fórmula retornará 0. Para usar essa fórmula, os intervalos de células precisam ter o mesmo tamanho e a mesma dimensão. Por exemplo, se MeusDados for um intervalo de 3 linhas por 5 colunas, SeusDados também deverão ser 3 linhas por 5 colunas:

=SOMA(SE(MeusDados=SeusDados,0,1))

A fórmula criará uma nova matriz do mesmo tamanho dos intervalos que você está comparando. A função SE preencherá a matriz com o valor 0 e o valor 1 (0 para células que não correspondam e 1 para células idênticas). Em seguida, a função SOMA retornará a soma dos valores da matriz.

Você pode simplificar a fórmula deste modo:

=SOMA(1*(MeusDados<>SeusDados))

Como a fórmula que conta valores de erro em um intervalo, essa fórmula funciona porque VERDADEIRO*1=1 e FALSO*1=0.

Esta fórmula de matriz retorna o número de linha do valor máximo em um intervalo de uma única coluna chamado Dados:

=MÍN(SE(Dados=MÁX(Dados),LINHA(Dados),""))

A função SE cria uma nova matriz que corresponde ao intervalo chamado Dados. Se uma célula correspondente contiver o valor máximo no intervalo, a matriz conterá o número da linha. Caso contrário, a matriz conterá uma cadeia de caracteres vazia (""). A função MÍN usa a nova matriz como segundo argumento e retorna o menor valor, que corresponde ao número da linha do valor máximo em Dados. Se o intervalo chamado Dados contiver valores máximos idênticos, a fórmula retornará a linha do primeiro valor.

Para retornar o endereço de célula real de um valor máximo, use esta fórmula:

=ENDEREÇO(MÍN(SE(Dados=MÁX(Dados),LINHA(Dados),"")),COLUNA(Dados))

Você encontrará exemplos semelhantes na pasta de trabalho de exemplo na planilha Diferenças entre conjuntos de dados.

Reconhecimento

Partes deste artigo foram baseadas em uma série de colunas do Excel para Usuários Avançados escritas por Colin Wilcox e adaptadas dos capítulos 14 e 15 das fórmulas do Excel 2002, um livro escrito por John Walkenbach, ex-MVP do Excel.

Precisa de mais ajuda?

Você pode sempre consultar um especialista na Excel Tech Community ou obter suporte nas Comunidades.

Confira também

Comportamento de matrizes despejadas e matrizes dinâmicas

Fórmulas de matriz dinâmica versus fórmulas de matriz CSE herdada

Função FILTRO

Função MATRIZALEATÓRIA

Função SEQUÊNCIA

Função CLASSIFICAR

Função CLASSIFICARPOR

Função ÚNICO

Erros #DESPEJAR! no Excel

Operador de interseção implícita: @

Visão geral das fórmulas

Precisa de mais ajuda?

Quer mais opções

Explore os benefícios da assinatura, procure cursos de treinamento, saiba como proteger seu dispositivo e muito mais.