Ir ao conteúdo
  • Cadastre-se

PROCV em planilha distintas.


PeHeBaCaSo

Posts recomendados

Olá amigos,

vejam se podem me ajudar, necessito de extrair dados da planilha "B" para a planilha "A" com a fórmula PROCV, porém tenho de fazer isso com vários clientes diferentes, sendo assim, a planilha "B" está sempre como sua matriz de busca localizada em células diferentes, tentarei explicar melhor abaixo.

PLANILHA A PARA O CLIENTE 1

A B

1 Código Receita

2 54782 =PROCV(A2;['PLANILHA_B.XLSX]Aba1'!$C$25:$H$61;5;0)

3 80015 =PROCV(A3;['PLANILHA_B.XLSX]Aba1'!$C$25:$H$61;5;0)

4 01586 =PROCV(A4;['PLANILHA_B.XLSX]Aba1'!$C$25:$H$61;5;0)

PLANILHA A PARA O CLIENTE 2

A B

1 Código Receita

2 54782 =PROCV(A2;['PLANILHA_B.XLSX]Aba1'!$L$12:$S$97;5;0)

3 80015 =PROCV(A3;['PLANILHA_B.XLSX]Aba1'!$L$12:$S$97;5;0)

4 01586 =PROCV(A4;['PLANILHA_B.XLSX]Aba1'!$L$12:$S$97;5;0)

Reparem que a matriz para extração dos dados sempre varia de acordo com o cliente, sendo assim, sempre tenho de ficar colocando o novo caminho, acontece que tenho de realizar a formulação da coluna B para mais 7 colunas, ou seja, um trabalho do cão, sem contar a chances de erro se maximizar.

Minha ideia seria 'lincar" a parte da matriz da formula em uma outra célula e lá eu descrever o caminho, deste modo, eu iria mudar somente o caminho em uma célula e todas as fórmulas iriam buscar o novo caminho. Por exemplo:

PLANILHA A

A B ... Z

1 Código Receita Caminho

2 54782 =PROCV(A2;$Z$1;5;0) ['PLANILHA_B.XLSX]Aba1'!$C$25:$H$61

3 80015 =PROCV(A3;$Z$1;5;0)

4 01586 =PROCV(A4;$Z$1;5;0)

Pessoal espero que vocês me ajudem.

Obrigado.

Pedro Souza

Link para o comentário
Compartilhar em outros sites

Amigo,

acho que ira ficar um pouco mais confuso mas como pediu segue oS arquivoS. :D:D:D !!! Isso mesmo no plural porque cada cliente tem sua planilha A e B respectiva, a diferença é que a planilha B onde estão os dados tem cada hora uma localização diferente da matriz para procurar os dados.

http://www.sendspace.com/filegroup/qeDTrcSKpSQI9wQ%2FdkWZ61HOaFXPwMHGsjNhmSz4iMtK7q6bpZhPug

Queria deixar na planilha A uma célula, uma macro ou seja lá o que for onde eu tenha que somente mudar o caminho de busca do PROCV uma única vez e não tenha de ficar refazendo a formula várias vezes. :wacko:

Abraços!

Pedro Souza

Link para o comentário
Compartilhar em outros sites

Boa Noite!

Hummmm intedi, realmente ai é complicado mesmo!

e por isso mesmo você preste atenção porque o mineirinho aqui é doido, então vamos lá!

eu usei as planilhas A(cliente3) e a B(cliente3)...

na A(cliente3) tem os dados e

na B(cliente3) tem as formulas de busca

na B(cliente3) você abre a parte de macros e cria um modulo e cola o seguinte codigo!

Function PROCURAENDERECO(ByVal Area As Range, ByVal Valor_Procurado As String)

If Not Area.Find(Valor_Procurado) Is Nothing Then

PROCURAENDERECO = Area.Find(Valor_Procurado).Address

Else

PROCURAENDERECO = CVErr(xlErrNA)

End If

End Function

so pra explicar... com esse codigo, você coloca em uma celula a formula =PROCURAENDERECO(A1:E10;B12)

e como no ex da formula vou valor q esta em B12 ele busca no intervalo de A1:E10

e retorna a celula que o valor esta, suponhamos que foce $D$8...

continuando!

na B(cliente3) suponhamos que esteja assim...

col.A-----------col.B----------col.C---------col.D----------col.E

-------------receita---------despesa------catalogo--------respon

A2--54782

A3--80015

A4--11586

em B2 coloque esta formula =PROCV($A2;INDIRETO("'[A (cliente 3).xlsx]Plan1'!"&PROCURAENDERECO('[A (cliente 3).xlsx]Plan1'!$A$1:$AAA$10000;$A2)&":$AAA$10000");2;0)

em C2 coloque esta formula

=PROCV($A2;INDIRETO("'[A (cliente 3).xlsx]Plan1'!"&PROCURAENDERECO('[A (cliente 3).xlsx]Plan1'!$A$1:$AAA$10000;$A2)&":$AAA$10000");3;0)

em D2 coloque esta formula

=PROCV($A2;INDIRETO("'[A (cliente 3).xlsx]Plan1'!"&PROCURAENDERECO('[A (cliente 3).xlsx]Plan1'!$A$1:$AAA$10000;$A2)&":$AAA$10000");4;0)

em E2 coloque esta formula

=PROCV($A2;INDIRETO("'[A (cliente 3).xlsx]Plan1'!"&PROCURAENDERECO('[A (cliente 3).xlsx]Plan1'!$A$1:$AAA$10000;$A2)&":$AAA$10000");5;0)

e depois arraste para baixo....

nas formulas quando você for alterar nao mude o intervalo $A$1:$AAA$10000

CLARO--- mude ele so se os dados forem alem da coluna AAA ou da linha 10000

mas sempre a partir de A1

aqui ta uma imagem com o resultado!

http://www.sendspace.com/file/idf66p

note que em A(cliente3) os dados estão a partir de L17 e a formula em B(cliente3)

buscou os dados perfeitamente!:lol:

espero ter ajudado!:cool:

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!