PROCV - Excel - Ambiente Office

Download PROCV - Excel - Ambiente Office

Post on 31-Jul-2015

154 views

Category:

Documents

4 download

TRANSCRIPT

PROCV - Excel - Ambiente Office

http://www.ambienteoffice.com.br/excel/PROCV/

Home Principal

Busque neste site:

Pesquisar

Assinar

Dicas Excel Word Outlook Office/VBA Suplementos Outros

PROCVltima atualizao: 06/12/2011 Introduo Automatizando o n._ndice_coluna O Parmetro procura_intervalo PROCV em Referncias Externas

Fluxo de Caixa Fcil Planilha PRONTA para uso no excel usada por mais de 100 empresaswww.LojadeConsultoria

-PROCV em Outra Planilha -PROCV em Outra Pasta de Trabalho Retornar Todas as Correspondncias de um PROCV PROCV com Critrios -Explicao

Autodesk BIM Construo Comece a usar a Autodesk Building Design Suite 2013. Baixe Grtis.Autodesk.com.br/BIMb

Procurar Valores Esquerda de uma Tabela -Fazer Cpia de Coluna para o Incio da matriz_tabela -Utilizando Funes CORRESP, DESLOC e NDICE -Explicao -Rearranjar matriz_tabela Dentro do PROCV Referncias

Controle Transportadoras Gesto Completa em Transportes Introduo Ct-e, Pneus, Fretes, Financeiro. A frmula PROCV uma das funes mais usadas no Excel. Tal fato se justifica pela grande utilidade da mesma: retorna a correspondnciawww.bsoft.com.br

da coluna vizinha de um elemento em uma tabela. Exemplo: na tabela abaixo, deseja-se preencher a tabela azul (que contm muitas linhas) com os Pontos de cada Nome, de acordo com a tabela de referncia, na cor verde:

Excel, Aprendizado Rpido Aprenda Excel Com Melhor Mtodo de Ensino. Aprendizado Garantido! Vejaluciorezena.com.br

Considerando que a tabela azul tem mais de mil linhas, seria gasto um tempo muito grande para realizar a tarefa povoando-a manualmente. A frmula PROCV procura um valor ou referncia numa tabela e retorna a correspondncia na clula. Nesse exemplo, poderamos escrever em G5: =PROCV(F5;B3:D7;2;0)

1 de 8

11/09/2012 08:57

PROCV - Excel - Ambiente Office

http://www.ambienteoffice.com.br/excel/PROCV/

e pressionar ENTER:

A frmula retornou 563, corretamente. Observe que ela possui 4 parmetros: =PROCV(valor_procura;matriz_tabela;n._ndice_coluna;procura_intervalo) valor_procura pode ser um valor ou uma referncia (ou seja, uma outra clula do Excel que tenha um valor) ; matriz_tabela a tabela onde o valor_procura ser pesquisado, verticalmente no primeiro intervalo. Essa tabela pode ter mais de uma coluna, e por isso importante ressaltar que a coluna pesquisada sempre ser a primeira coluna da tabela. Exemplo: no caso acima, matriz_tabela B3:D7, o valor_procura ser pesquisado no intervalo B3:B7 (ou seja, somente na coluna B) ; n._ndice_coluna qual coluna o PROCV retornar clula. Esse valor um nmero inteiro igual ou maior que 1. No exemplo acima, foi necessrio atribuir 2 a esse parmetro para retornar quantos Pontos um Nome tem porque Pontos a coluna logo direita, ou seja, a coluna 2 tendo-se como como 1 a coluna de referncia. importante lembrar que a matriz_tabela deve ser larga o suficiente para acomodar o n._ndice_coluna a ser usado na frmula, ou seja, se voc deseja usar 5 para o n._ndice_coluna, a matriz_tabela deve ser no mnimo, por exemplo, A1:E1000, ou D8:Y500. Se o n._ndice_coluna ultrapassar a largura da matriz_tabela, o erro #REF! ser retornado clula. procura_intervalo pode ser VERDADEIRO/FALSO ou 0/1, e opcional. Por enquanto, mantenha-o como 0 ou FALSO (tem o mesmo efeito, pessoalmente uso o 0 por praticidade) porque adiante ser explicado como esse parmetro pode ser usado. importante lembrar que o PROCV no distingue maisculas de minsculas, isto , se na matriz_tabela conter o registro Felipe e o valor_procura for felipe, a frmula tratar esse caso normalmente e retornar sua correspondncia. Para o nosso exemplo, como preencher a clula H5, para retornar a Cidade de um Nome especfico? Ser a mesma frmula para retornar os Pontos, somente alterando o parmetro n._ndice_coluna da frmula de 2 para 3, j que se considerarmos a coluna Nome como 1, Pontos ser a 2 e ento Cidade ser a 3: =PROCV(F5;B3:D7;3;0)

O resultado ser, corretamente Bzios. A prxima etapa copiar a frmula para todas as clulas da tabela a ser preenchida. Para fazer isso, precisamos fixar a referncia da tabela a ser pesquisada (matriz_tabela), seno a tabela de procura ir deslocar quando se colar frmula abaixo.: Em G5: =PROCV($F5;$B$3:$D$7;2;0) Em H5: =PROCV($F5;$B$3:$D$7;3;0) Nota: Clique aqui para aprender mais sobre referncias relativas e absolutas. Pronto, agora s copiar essa frmula para as todas as outras clulas das colunas, ou seja, copiar-se- a clula G5 para todas as clulas da coluna G e H5 para todas as clulas da coluna H.

Suprimindo Erros no PROCVCaso um valor procurado no seja encontrado na tabela de busca, o Excel retorna #N/D para a clula:

2 de 8

11/09/2012 08:57

PROCV - Excel - Ambiente Office

http://www.ambienteoffice.com.br/excel/PROCV/

Veja que o PROCV consegue retornar com sucesso as correspondncias de Ricardo e ricardo, pois no distingue maisculas de minsculas, como dito anteriormente. No entanto, ao procurar Henrique a funo retorna o erro #N/D (no disponvel) porque, obviamente, o registro Henrique no consta na tabela. Muitos usurios acham esteticamente desagradvel numa Planilha esses erros ficarem expostos. H uma soluo para que a frmula retorne um resultado em branco no caso de uma correspondncia ser encontrada. As frmulas em G5, G6 e G7 seriam, respectivamente: =SEERRO(PROCV(F5;B3:D7;2;0);"") =SEERRO(PROCV(F6;B3:D7;2;0);"") =SEERRO(PROCV(F7;B3:D7;2;0);"") O resultado ser:

Para visualizar a tabela azul acima, ficou bem mais agradvel. O funcionamento da frmula SEERRO simples: caso a expresso no primeiro parmetro retornar um erro, o segundo parmetro (que nosso caso, vazio, dado pela duplas aspas) ser retornado. Vale lembrar que a funo SEERRO s pode ser usada a partir do Excel 2007.

O Parmetro procura_intervaloConforme dito anteriormente, o parmetro procura_intervalo o ltimo argumento do PROCV. Sabemos o comportamento da funo quando ele FALSO. Observe a tabela abaixo para entender quando ele VERDADEIRO:

O exemplo acima mostra a nota de alguns alunos, e o objetivo atribuir o conceito correto de acordo com as regras da tabela verde. A frmula E7 : =PROCV(D7;$G$5:$H$10;2;VERDADEIRO) Copie a frmula para baixo para completar a tabela azul. Observe que, ao usar o argumento procura_intervalo como Verdadeiro, busca-se uma correspondncia aproximada na tabela. Note que a correspondncia sempre retorna o valor do limite inferior (exemplo: uma nota 59 busca a correspondncia de 50, e no 60) imprescindvel que a primeira coluna da matriz_tabela (ou seja, a coluna que so buscadas as correspondncias) seja numrica e esteja classificada em ordem crescente. Do contrrio, essa forma de PROCV no funcionar corretamente. Observe tambm que a matriz_tabela deve mostrar qual o valor mnimo possvel buscado (no nosso caso, 0), mas no precisa constar o valor mximo possvel (no nosso caso, 100). Com esse parmetro sendo Verdadeiro e a primeira coluna da matriz_tabela sendo composta por textos e no nmeros, o PROCV retorna a correspondncia da linha de maior nmero.

3 de 8

11/09/2012 08:57

PROCV - Excel - Ambiente Office

http://www.ambienteoffice.com.br/excel/PROCV/

Automatizando o n._ndice_colunaVamos para um outro cenrio. Suponha que tenhamos a tabela abaixo:

Note que nesse novo cenrio temos um grande nmero de colunas. OK, ento para preenchermos todo o contedo com PROCV, basta que: Em E12: =PROCV(D12;$B$3:$Y$7;2;0) , e ento copiar a frmula por toda a coluna ; Em F12: =PROCV(D12;$B$3:$Y$7;3;0) , e ento copiar a frmula por toda a coluna ; Em G12: =PROCV(D12;$B$3:$Y$7;4;0) , e ento copiar a frmula por toda a coluna ; E assim por diante, sempre incrementando o n._ndice_coluna em uma unidade. H um jeito mais fcil para entramos uma clula em E12 e copi-la para todas as clulas da tabela azul: =PROCV($D12;$B$3:$Y$7;COLUNA(B:B);0) , e copiar a frmula para todas as clulas da tabela. $D12 deve estar com a coluna em referncia absoluta para que quando a frmula seja colada lateralmente, o valor de procura (valor_procura) se mantenha sempre na mesma coluna. A novidade aqui o trecho COLUNA(B:B), que retorna qual o nmero da coluna de uma referncia. Ora, sabemos que a coluna B a 2. Como esse trecho est em referncia relativa, a clula sua direita ser na coluna C, que corresponde ao 3 e assim por diante.

PROCV em Referncias ExternasO PROCV pode ser usado para buscar informaes em outra Planilha da Pasta de Trabalho ou at mesmo de planilhas de outras pastas de trabalho.

PROCV em Outra PlanilhaConsidere a situao:

Essas duas planilhas esto na mesma pasta de trabalho. O objetivo preencher a tabela Nomes com as informaes da planilha Tabela usando o PROCV. Para a coluna Pontos, isso pode ser feito com a frmula: =PROCV($B3;Tabela!$B$3:$D$7;2;0) Observe o termpo Tabela!$B$3:$D$7. Antes da referncia h um nome com exclamao (Tabela!), que corresponde de qual tabela a referncia aponta ($B$3:$D$7). Nota: Se o nome da outra planilha possuir espaos, como Tabela de Dados, seria necessrio usar aspas simples na representao da referncia, tornando-se, por exemplo, 'Tabela de Dados'!$B$3:$D$7. Vale ressaltar que o smbolo de exclamao fica fora das aspas. Quando fao esse tipo de PROCV, costumo fazer a notao da matriz_tabela de uma forma diferente, conforme a seguir: =PROCV($B3;Tabela!$B:$D;2;0) Note que ao invs de utilizar 'Tabela de Dados'!$B$3:$D$7, uso Tabela!$B:$D. Isso economiza tempo para digitao da frmula sabendo-se que CTRL+Barra de espao, no Excel, seleciona uma coluna inteira (em tempo: SHIFT+Barra de espao seleciona uma linha).

4 de 8

11/09/2012 08:57

PROCV - Excel - Ambiente Office

http://www.ambienteoffice.com.br/excel/PROCV/

PROCV em Outra Pasta de TrabalhoE se a tabela de pesquisa de um valor estiver em outra pasta de trabalho? Veja o exemplo abaixo:

Temos duas pastas de trabalho: Preencher e Banco de Informaes. Para preencher os dados da coluna Pontos de Nomes usando a tabela da planilha Tabela de Dados da pasta de trabalho Banco de Informaes, use a frmula: =PROCV($B3;'[Banco de Informaes.xlsx]Tabela de Dados'!$B:$D;2;0) Observe que, para esse caso, foi necessrio referenciar outra pasta de trabalho, alm de sua planilha. Para referenciar uma pasta de trabalho ativa, coloque-a entre colchetes. Vale novamente ressaltar as aspas simples: a de incio fica antes do colchete e a segunda antes do exclamao. Ser que necessrio abrir as duas planilhas toda vez que necessitar povoar a tabela de Nomes na pasta de trabalho Preencher? No. Observe que, se voc fechar a pasta de trabalho Banco de Informaes, o Excel automaticamente ir adaptar sua frmula de PROCV para algo do tipo: =PROCV($B3;'C:\Users\Padrao\Desktop\[Banco de Informaes.xlsx]Tabela de Dados'!$B:$D;2;0) Como a pasta que contm a tabela de referncia foi fechada, necessrio que o Excel saiba todo o caminho do arquivo de consulta para que ele consiga atualizar os dados da planilha Nomes. Ento, ele automaticamente preenche o caminho em todas as ocorrncias da frmula na tabela.

Retornar Todas as Correspondncias de um PROCVA limitao da funo PROCV que ela encontra apenas a primeira ocorrncia de uma correspondncia num vetor. s vezes, precisamos retornar todas essas correspondncias. Se necessita disso, visite o artigo Retornar Todas as Correspondncias de um PROCV.

PROCV com CritriosConsidere a tabela abaixo:

O objetivo retornar o Cdigo atravs de um PROCV que como entrada de parmetros tem Felipe, Tarde e Escritrio. Observe que no total tem-se duas correspondncias para essa busca. Duas frmulas podem ser usadas para esse caso, uma que retorna a primeira correspondncia na tabela, e outra que retorna a ltima. Para retornar a primeira correspondncia, se B14=Felipe, C14=Tarde, D14=Escritrio: =NDICE(E3:E11;CORRESP(1;(B3:B11=B14)*(C3:C11=C14)*(D3:D11=D14);0)) (frmula matricial) Para retornar a ltima correspondncia, se B18=Felipe, C18=Tarde, D18=Escritrio: =PROC(1;(1/(B3:B11=B18)*(C3:C11=C18)*(D3:D11=D18));E3:E11) A imagem abaixo ilustra os dois casos:

5 de 8

11/09/2012 08:57

PROCV - Excel - Ambiente Office

http://www.ambienteoffice.com.br/excel/PROCV/

Note que se houver um valor intermedirio, o mesmo no ser possvel de se obter.

ExplicaoAmbas as frmulas possuem o termo (B3:B11=B14)*(C3:C11=C14)*(D3:D11=D14), que pode ser representado abaixo:

Vamos chamar a coluna Resultado, que possui 0 e 1, de vetor. Obviamente, temos 1 apenas quando as trs condies so satisfeitas (B3:B11=B14)*(C3:C11=C14)*(D3:D11=D14). Reescrevendo a soluo que possui NDICE, temos: =NDICE(E3:E11;CORRESP(1;vetor;0)) (frmula matricial) CORRESP varre um vetor do incio at o fim. Logo, ser procurado 1 em vetor. A funo retorna 4, j que o quarto elemento de vetor 1. Reescrevendo a frmula: =NDICE(E3:E11;4) (frmula matricial) Essa funo retornar o quarto elemento do vetor E3:E11, que 70.

De forma anloga, ao reescrevermos a soluo usando PROC: =PROC(1;1/vetor;E3:E11) O clculo 1/vetor mostrado abaixo:

PROC, ao contrrio de CORRESP, varre um vetor do ltimo elemento ao primeiro. Logo, PROC buscar 1 em 1/vetor de trs para a frente, encontrando o oitavo elemento, e retornar o oitavo elemento de E3:E11, que 150.

6 de 8

11/09/2012 08:57

PROCV - Excel - Ambiente Office

http://www.ambienteoffice.com.br/excel/PROCV/

Procurar Valores Esquerda de uma TabelaObserve a situao abaixo:

Seu objetivo procurar os valores da coluna E em C, e retornar os Pontos e Cidade de cada ocorrncia. A frmula abaixo, em F2, no serve para ns: =PROCV($E2;$A$2:$C$6;2;0) O resultado retornado ser #N/D. Isso ocorre porque, conforme explicado no incio deste artigo, Ricardo ser procurado na primeira coluna da matriz_tabela, isto , Pontos. Como nenhuma ocorrncia encontrada, o erro retornado. Existem algumas formas de se trabalhar nessa situao, conforme mostrado abaixo.

Fazer Cpia de Coluna para o Incio da matriz_tabelaSe sua matriz_tabela for pequena, voc poderia clicar sobre a coluna C, pressionar Ctrl+C, em seguida clicar com o boto da direita em A e selecionar Inserir clulas copiadas. O resultado final ser como se segue:

Agora, basta inserir a frmula em G2 a frmula =PROCV($F2;$A$2:$C$6;COLUNA(B:B);0) e copi-la por todo intervalo G2:H26. Note que ao se inserir uma coluna no incio da tabela verde, todas referncias foram deslocadas em uma coluna. No entanto, nem sempre possvel utilizar essa tcnica. Pode ser que s vezes a matriz_tabela esteja bloqueada ou as clulas esto desconfortavelmente mescladas e o usurio no pode copiar uma coluna da matriz_tabela. Os exemplos a seguir tratam dessa situao.

Utilizando Funes CORRESP, DESLOC e NDICEPara a tabela original, poderamos escrever a frmula em rmula em F2: =DESLOC(A$1;CORRESP($E2;$C$2:$C$6;0);0) Ento, copiar e colar essa frmula para o intervalo G2:H26. Poderamos tambm usar a frmula em F2: =NDICE(A$2:A$6;CORRESP($E2;$C$2:$C$6;0)) E copi-la para o intervalo G2:H26.

ExplicaoVeja que nas duas frmulas so utilizadas a funo CORRESP. A funo CORRESP retorna o ndice do elemento $E2 no vetor $C$2:$C$6. No nosso caso, por exemplo, Rodrigo retornaria o valor 4, pois no vetor $C$2:$C$6, Rodrigo o 4o elemento. O terceiro argumento de CORRESP, o nmero 0, indica que estamos querendo uma correspondncia exata, e no aproximada. A primeira frmula ficaria ento na forma (para $E2=Rodrigo): =DESLOC(A$1;4;0) A funo DESLOC translada a partir de uma referncia uma certa quantidade de linhas e colunas, na forma =DESLOC(referencia;linhas;colunas) Logo, no nosso exemplo de DESLOC, a partir de A$1 desloca-se 4 linhas para baixo e 0 colunas, retornando a correspondncia desejada para Rodrigo, que 1129.

7 de 8

11/09/2012 08:57

PROCV - Excel - Ambiente Office

http://www.ambienteoffice.com.br/excel/PROCV/

A segunda frmula ficaria: =NDICE(A$2:A$6;4) A funo ndice retorna o elemento nmero 4 do vetor A$2:A$6, que 1129.

Rearranjar matriz_tabela Dentro do PROCVPara a tabela original, poderamos escrever a frmula em F2: =PROCV($E2;ESCOLHER({1\2};$C$2:$C$6;A$2:A$6);2;0) Ateno: No Excel 2007 ou inferior, troque o smbolo \ por . Ento, copiar e colar essa frmula para o intervaldo G2:H26. A funo ESCOLHER da forma: ESCOLHER(nmero;termo1;termo2;termo3;...;termo_n) Se nmero for igual a 1, retorna-se o termo1. Se nmero for igual a 2, retorna-se o termo2 e assim por diante. Quando inserimos um vetor dentro do parmetro nmero, como {1\2}, criamos dinamicamente uma matriz (tabela) cuja primeira coluna formada por $C$2:$C$6 e segunda coluna A$2:A$6. Como procura_intervalo 2, retorna-se corretamente a correspondncia de $C$2:$C$6 em A$2:A$6. Meus agradecimentos a mcbranco por essa frmula.

RefernciasPara fazer o download de todos os exemplos desta pgina, clique aqui.

Empresas Familiares Profissionalizao e Sucesso IX Evento em So Paulo

www.nbs.com.br

Inventrios de Estoques RGIS - Empresa lder em inventrios Acuracidade e Abrangncia Nacional www.rgis.com Supera - Thin Client Indstria de Thin Client e Thin-PC Maior capacidade de mem.RAM e flash www.supera.ind.br--Site de Felipe Costa Gualberto. Belo Horizonte, Brasil, 2009-2012. benzadeus3@ambienteoffice.com.br

8 de 8

11/09/2012 08:57