PplWare Mobile

Dicas do Microsoft Excel é ao Domingo…no Pplware – 46

                                    
                                

Este artigo tem mais de um ano


Autor: Pedro Pinto


  1. José Augusto says:

    As fórmulas matriciais sempre foram do meu agrado por condensarem múltiplas operações e originarem soluções bem engenhosas e úteis. No exemplo, o total de vendas do vendedor Barnhill pode ser obtido por várias fórmulas matriciais.
    Considerando B15<- “Barnhill” a fórmula proposta

    =SOMA(SE(B2:B12=$B$15;D2:D12*E2:E12)) pode ser escrita como:

    =SOMA(SE(B2:B12=$B$15;D2:D12;0)*E2:E12)
    =SOMARPRODUTO((B2:B12=$B$15)+0;D2:D12;E2:E12)
    =SOMA(((B2:B12=$B$15)+0)*D2:D12*E2:E12)
    =SOMA(D2:D12*E2:E12*(B2:B12=$B$15))

  2. joao says:

    ola
    ao executar a primeira funçao… =SOMA(D2:D12)*(E2:E12)
    devolve-me.. #Valor!
    acontece o mesmo nas funçoes seguintes, alguma ideia do que possa estar errado…

  3. joao says:

    ola Jose
    seria possivel disponibilizar aqui o ficheiro?
    eu faço sempre os exemplos apresentados mas por vezes nao chego aos mesmos resultados, devo estar a fazer algo errado nas formulas…
    agradecido

  4. elizandro says:

    como ficaria a fórmula se eu quisesse as 3 vendas do vendedor “sanchez” porém, que aparecessem em ordem de maior venda para a menor??

    • José Augusto says:

      Olá Elizandro
      Use apenas a seguinte fórmula matricial aplicada ao nº de linhas que entender necessárias mas obrigatoriamente a quatro colunas (seleccione por exemplo [K23:N33])
      =SE.ERRO(ÍNDICE($A$2:$E$12;CORRESP(MAIOR(–($B$2:$B$12=$A$16)*–($E$2:$E$12);LIN(A1:A11));$E$2:$E$12;0); {1\3\4\5});””)
      Não se esqueça de validar com CTRL+SHIFT+ENTER
      Cumprimentos

  5. José Augusto says:

    Segue novamente a fórmula pois os dois sinais menos seguidos antes de e depois de ($B$2:$B$12=$A$16)* ficaram reduzidos a apenas um travessão antes e um depois.
    =SE.ERRO(ÍNDICE($A$2:$E$12;CORRESP(MAIOR(–($B$2:$B$12=$A$16)*–($E$2:$E$12);LIN(A1:A11));$E$2:$E$12;0); {1\3\4\5});””)
    em alternativa utilize a fórmula
    =SE.ERRO(ÍNDICE($A$2:$E$12;CORRESP(MAIOR(0+($B$2:$B$12=$A$16)*($E$2:$E$12);LIN(A1:A11));$E$2:$E$12;0); {1\3\4\5});””)

  6. ELIZANDRO says:

    Augusto.. .bom dia!
    colei as duas fórmulas.. dei uma conferida… tive o cuidado de transformá-la em matricial.. porém apresentou em todos os campos o erro #NOME?

    • José Augusto says:

      Qual a versão de Excel que usa?
      Seleccione uma folha vazia escreva nas células A1:D1 os valores 1, 3, 4 e 5., e com uma outra célula seleccionada, escreva na barra de fórmulas =A1:D1 e clique na tecla F9. Veja o que ficou escrito na barra {1\3\4\5} ou não. Se não, substitua na minha fórmula o vector linha {1\3\4\5} por aquele que foi encontrado.
      Se não resultar tente ver se a formula funciona para obter os valores da coluna preço unitário, substituindo o vector pelo valor 5 (só uma coluna seleccionada)

    • José Augusto says:

      Veja a correspondência entre Excel PT e Excel BR
      SE.ERRO (PT-PT) SEERRO (PT-BR)
      É uma das causas do erro que está a encontrar.

  7. elizandro says:

    Augusto.. melhorou.. está trazendo as datas corretas… e me parece na ordem financeira… porém traz somente datas… veja abaixo.

    19/10/2012 19/10/2012 19/10/2012
    08/10/2012 08/10/2012 08/10/2012
    13/10/2012 13/10/2012 13/10/2012
    #NOME? #NOME? #NOME?

  8. elizandro says:

    verifiquei sua orientação em relação sobre o vector e está aparecendo conforme você mencionou: {1\3\4\5} .

  9. elizandro says:

    AUGUSTO… FICOU MUITO boa… você é muito fera no excel.
    Fiz alguns testes e verifiquei que quando há dados financeiros iguais de um mesmo vendedor a fórmula trás sempre o mesmo produto… como solucionar isso?? no caso a fórmula que vem classificada por valores descrescentes… eu preciso que ela seja decrescente, como você fez… porém… que a fórmula busque o produto correto…

    Alternativa com uma só fórmula, lista ordenada pelo preço
    Data Produto Quantidade Preço Unitário
    08/10/2012 Notebook 6 2.250,00 €
    08/10/2012 Notebook 6 2.250,00 €
    08/10/2012 Notebook 6 2.250,00 €

  10. elizandro says:

    tem algum email que eu possa encaminhar para você uma planilha que eu preciso desenvolver, com esta fórmula?? falta pouco…rsrs

    • José Augusto says:

      Use a fórmula que se segue: (ordem de preço e dentro do mesmo preço ordem da posição)

      =SE.ERRO(ÍNDICE($A$2:$E$12;CORRESP(MAIOR(0+($B$2:$B$12=$A$16)*($E$2:$E$12-LIN($E$2:$E$12)*0,00001);LIN(A1:A11));($E$2:$E$12-LIN($E$2:$E$12)*0,00001);0); {1\3\4\5});””)

      Quanto ao resto, o meu trabalho/tempo não me permite assumir nenhum outro “encargo”. 🙂

  11. elizandro says:

    VEJA SE VOCE CONSEGUE acessar a planilha no link do google drive
    https://drive.google.com/open?id=0B0eAec9XozD3dkhrVlRCT1RkZDQ

    é bem simples… tem uma tabela… de vendas…. cidades e região…
    preciso dos 10 maiores cidades vendedoras por região… a tua fórmula criada atende quase perfeitamente… porém terei algumas vendas iguais por região e cidade… e a fórmula deve trazer a cidade correta … e não a primeira… como está acontecendo com a tua fórmula atual…

  12. elizandro says:

    Augusto… entendo perfeitamente…
    colei a fórmula que você passou… mas ela retorna apenas as datas…
    Data Produto Quantidade Preço Unitário
    19/10/2012 19/10/2012 19/10/2012 19/10/2012
    08/10/2012 08/10/2012 08/10/2012 08/10/2012
    13/10/2012 13/10/2012 13/10/2012 13/10/2012

  13. elizandro says:

    Augusto.. bom dia!
    ainda não… tentei no celular e no micro.. não abriu… página não pode ser exibida.
    cole aqui mesmo a fórmula… grato.
    abraço.

    • José Augusto says:

      Bom dia
      Seleccione as células B2:C2 do seu ficheiro [fórmula maior.xlsx] e escreva na barra de fórmulas
      =SE(CONTAR.SE($G$2:$G$58;$E$2)>=$A2;SE.ERRO(ÍNDICE($H$2:$I$58;CORRESP(MAIOR(0+($G$2:$G$58=$E$2)*($I$2:$I$58-LIN($I$2:$I$58)*0,00001);$A2);($I$2:$I$58-LIN($I$2:$I$58)*0,00001);0); {1\2});””);””)
      copie B2:C2 para baixo.
      Nota: No meu computador os links abrem sem problema

    • José Augusto says:

      Não se esqueça de que é uma fórmula matricial.

  14. elizandro says:

    olá.. como fazer uma fórmula que traga-me, na relação abaixo, SEM CRIAR COLUNAS ACESSÓRIAS, os maiores destinos, tendo como origem Florianópolis?
    ex.: o maior destino, tendo como origem florianópolis é: Chapecó – 4 vezes
    o segundo maior destino, tendo como origem Florianópolis é: São Francisco do sul – 3 vezes… e assim por diante.
    Esta fórmula tem que ter um argumento, no caso “florianópolis” e após contar os destinos e trazer os maiores…nomeando a quantidade e o nome da cidade.

    ORIGEM DESTINO
    Florianópolis São Francisco do Sul
    Urussanga Chapecó
    florianópolis Chapecó
    São Bento do Sul Chapecó
    Florianópolis Chapecó
    Florianópolis São Francisco do Sul
    Florianópolis São Francisco do Sul
    Barra Velha Maceió
    Florianópolis Camboriú
    Gravatal Barra do Garças
    Lages Barra do Garças
    Lages Maravilha
    Lages Maravilha
    Içara Maravilha
    Florianópolis Chapecó
    Florianópolis Chapecó

Deixe um comentário

O seu endereço de email não será publicado.

You may use these HTML tags and attributes: <a href="" title="" rel=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

Aviso: Todo e qualquer texto publicado na internet através deste sistema não reflete, necessariamente, a opinião deste site ou do(s) seu(s) autor(es). Os comentários publicados através deste sistema são de exclusiva e integral responsabilidade e autoria dos leitores que dele fizerem uso. A administração deste site reserva-se, desde já, no direito de excluir comentários e textos que julgar ofensivos, difamatórios, caluniosos, preconceituosos ou de alguma forma prejudiciais a terceiros. Textos de caráter promocional ou inseridos no sistema sem a devida identificação do seu autor (nome completo e endereço válido de email) também poderão ser excluídos.