Fórum Excel Bácico, Avançado e Vba

Este fórum é destina a usuário de Excel, que queiram compartilhar informações a básicas, avançadas e programação em VBA...
 
InícioInício  FAQFAQ  BuscarBuscar  MembrosMembros  GruposGrupos  Registrar-seRegistrar-se  Login  

Compartilhe | 
 

 Realizar procura de Cliente, depois do produto e inserir em outra planilha

Ver o tópico anterior Ver o tópico seguinte Ir em baixo 
AutorMensagem
juliananaves



Mensagens : 9
Data de inscrição : 12/05/2015

MensagemAssunto: Realizar procura de Cliente, depois do produto e inserir em outra planilha   Qua Maio 27, 2015 6:53 pm

Tenho um aquivo com duas planilhas, onde na primeira há todas as vendas realizadas no período de 6 meses e na segunda tenho todas as licitações ganhas. Em abas tenho o Nome do Cliente padronizado e o código dos produtos, portanto necessito encontrar o cliente de depois verificar se os itens da licitação foram vendidos nos meses em questão. Não consegui fazer nada com código que fizesse o que desejo. Tentei de várias formas mas não obtive sucesso. Segue abaixo um exemplo para terem clareza do que necessito. Dado Importante estou utilizando o OFFICE 2010.

Obrigada,

Exemplo:

Buscar o Cliente na ABA licitação e pesquisar os produtos licitados e preencher a planilha, conforme exemplo abaixo:

ABA VENDAS

Cliente                           Produto nov-14 dic-14 ene-15 feb-15   mar-15 abr-15 Mai-15
OBRAS SOCIAIS DA DIOCESE  320S-12-PDK 200       0     200 100       200 0   100
OBRAS SOCIAIS DA DIOCESE  320S-18-PDK 200       0     200 200       200 0    200
OBRAS SOCIAIS DA DIOCESE  7024S-11-PDH 0      10       10 10       12 0       0
OBRAS SOCIAIS DA DIOCESE  21027         10       0        0 0         0 0      10
OBRAS SOCIAIS DA DIOCESE  21028         5       2        1 5        1 2       1
OBRAS SOCIAIS DA DIOCESE  240714         4     20       25 30        40 2       3
OBRAS SOCIAIS DA DIOCESE  240816         10       7        9 10       11 59        0



ABA Licitação ficaria preenchida dessa forma:

Cliente                                  Cod. Produto    nov/14  dez/14 jan/15 fev/15 mar/15 abr/15 mai/15 jun/15
OBRAS SOCIAIS DA DIOCESE    320S-12-PDK    100        0       200      100     200      0       100
OBRAS SOCIAIS DA DIOCESE    320S-18-PDK    200        0       200      200      200      0      200
OBRAS SOCIAIS DA DIOCESE    7024S-11-PDH   0       10        10       10        12       0       0

Obrigada,

Juliana
Voltar ao Topo Ir em baixo
Ver perfil do usuário
alexandrevba



Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

MensagemAssunto: Re: Realizar procura de Cliente, depois do produto e inserir em outra planilha   Qui Maio 28, 2015 5:36 pm

Bom dia!!

Onde está seu arquivo modelo!!

Att
Voltar ao Topo Ir em baixo
Ver perfil do usuário
juliananaves



Mensagens : 9
Data de inscrição : 12/05/2015

MensagemAssunto: Re: Realizar procura de Cliente, depois do produto e inserir em outra planilha   Qui Maio 28, 2015 5:43 pm

Bom Dia!

Não tenho arquivo modelo!

É bem isso que coloquei no modelo!

Voltar ao Topo Ir em baixo
Ver perfil do usuário
alexandrevba



Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

MensagemAssunto: Re: Realizar procura de Cliente, depois do produto e inserir em outra planilha   Qui Maio 28, 2015 11:07 pm

Boa tarde!!

Vamos ver se mais alguém entendeu sua dúvida!

caso queira minha ajuda eu lhe recomendo que me ajude, pois um arquivo modelo facilita entender alguns detalhes.

Se não puder postar o arquivo, então separe os dados usando algum caractere que não seja usado nos seus dados como o PIPE | <- essa barra em pé.

|Coluan A|Coluna B|Coluna C

Assim quando copiar e colar ao menos será mais fácil entender seus dados.

Att
Voltar ao Topo Ir em baixo
Ver perfil do usuário
juliananaves



Mensagens : 9
Data de inscrição : 12/05/2015

MensagemAssunto: Re: Realizar procura de Cliente, depois do produto e inserir em outra planilha   Sex Maio 29, 2015 3:48 pm

ABA VENDAS

Cliente |Produto |nov-14 |dic-14 |ene-15 |feb-15 |mar-15 |abr-15 |Mai-15
OBRAS SOCIAIS DA DIOCESE |320S-12-PDK |200 |0 |200 |100 |200 |0 |100
OBRAS SOCIAIS DA DIOCESE |320S-18-PDK |200 |0 |200 |200 |200 |0 |200
OBRAS SOCIAIS DA DIOCESE |7024S-11-PDH| 0 |10 | 10 |10 |12 |0 |0
OBRAS SOCIAIS DA DIOCESE |21027 |10 |0 |0 |0 |0 |0 |10
OBRAS SOCIAIS DA DIOCESE |21028 |5 |2 |1 |5 |1 |2 |1
OBRAS SOCIAIS DA DIOCESE |240714 | 4 |20 |25 |30 |40 |2 |3
OBRAS SOCIAIS DA DIOCESE |240816 |10 | 7 | 9 |10 |11 |59 | 0



ABA Licitação ficaria preenchida dessa forma:

Cliente |Cod. Produto |nov/14 | dez/14 |jan/15 |fev/15 |mar/15 |abr/15| mai/15 |jun/15
OBRAS SOCIAIS DA DIOCESE | 320S-12-PDK | 100 | 0 | 200 | 100 | 200 | 0 | 100 |
OBRAS SOCIAIS DA DIOCESE | 320S-18-PDK | 200 | 0 | 200 | 200 | 200 | 0 |200 |
OBRAS SOCIAIS DA DIOCESE | 7024S-11-PDH | 0 | 10 |10 |10 |12 |0 |0 |
Voltar ao Topo Ir em baixo
Ver perfil do usuário
alexandrevba



Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

MensagemAssunto: Re: Realizar procura de Cliente, depois do produto e inserir em outra planilha   Sex Maio 29, 2015 3:55 pm

Bom dia!!

ok, agora deixa eu entender como você chegou neste resultado.
Código:
Cliente |Cod. Produto |nov/14 | dez/14 |jan/15 |fev/15 |mar/15 |abr/15| mai/15 |jun/15
OBRAS SOCIAIS DA DIOCESE | 320S-12-PDK | 100 | 0 | 200 | 100 | 200 | 0 | 100 |
OBRAS SOCIAIS DA DIOCESE | 320S-18-PDK | 200 | 0 | 200 | 200 | 200 | 0 |200 |
OBRAS SOCIAIS DA DIOCESE | 7024S-11-PDH | 0 | 10 |10 |10 |12 |0 |0 |
Explique como foi que você obteve esse resultado.

Att
Voltar ao Topo Ir em baixo
Ver perfil do usuário
juliananaves



Mensagens : 9
Data de inscrição : 12/05/2015

MensagemAssunto: Re: Realizar procura de Cliente, depois do produto e inserir em outra planilha   Sex Maio 29, 2015 4:16 pm

Peguei o item da ABA Licitações e verifiquei se existia correspondente na Aba Vendas. Tendo correspondente, devo pegar todas as colunas copiar e colar na planilha.

Para lhe ajudar mais ainda, comecei a fazer o código, consegui chegar até o ponto que eu copio a primeira linha, depois não consigo passar para o próximo item pois sempre pegam o primeiro item.

Estou tentando trabalhar nesse código, mas não tenho tido muito exito. há vários comentários pois estou testando possibilidades.

Sub Macro1()
'
' Macro1 Macro
'
Dim Coluna As Long
Dim linha As Long
Dim Linha2 As Long
Dim teste As Long

Dim Cliente As Variant
Dim Produto As Variant
Dim Posição As Variant
Dim colar As Variant
Dim Existe As Variant

Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim L As Integer

L = 5


With ThisWorkbook
With .Worksheets("LICITAÇÕES")
linha = .Cells(.Rows.Count, "A").End(xlUp).Row
End With
End With

With ThisWorkbook
With .Worksheets("Vendas")
Linha2 = .Cells(.Rows.Count, "A").End(xlUp).Row
End With
End With


For i = 2 To linha
ThisWorkbook.Worksheets("Licitações").Select
Cliente = ThisWorkbook.Worksheets("Licitações").Cells(i, "A").Value
colar = 7
ThisWorkbook.Worksheets("Vendas").Select
teste = ThisWorkbook.Worksheets("Vendas").UsedRange.Columns.Count
ThisWorkbook.Worksheets("Vendas").Select
cellocalizar = 0
' If cellocalizar = Cliente Then

'Set cellocalizar = ActiveSheet.Columns.Find(Cliente, LookAt:=xlWhole, LookIn:=xlValues

' Else

' Set cellocalizar = ActiveSheet.Columns.Find(Cliente, LookAt:=xlWhole, LookIn:=xlValues)

' End If

' Existe = cellocalizar.Value
If Not cellocalizar Is Nothing Then
Sheets("Licitações").Select
Produto = Range("B" & i).Value
Sheets("vendas").Select
Posição = cellocalizar.Row
While Produto <> Range("C" & Posição)
Sheets("vendas").Select
Set cellocalizar = fruits.FindNext(Cliente)
'ActiveSheet.Columns.Findnex(Cliente, LookAt:=xlWhole, LookIn:=xlValues)
Posição = cellocalizar.Row
Wend
If Produto = Range("C" & Posição) Then
If Not cellocalizar Is Nothing Then
Sheets("vendas").Select
Posição = cellocalizar.Row
Coluna = (teste - L)
For k = 0 To Coluna
ThisWorkbook.Worksheets("Vendas").Select
ThisWorkbook.Worksheets("Vendas").Cells(Posição, L).Select
' Ranger("E" & Posição).Select
Selection.Copy
Sheets("Licitações").Select
Cells(i, colar + k).Select
ActiveSheet.Paste
L = L + 1
Next k
Else

' Sheets("Licitações").Select

'Sheets("vendas").Select
' Posição = cellocalizar.Row
Posição = Posição + 1
ThisWorkbook.Worksheets("Vendas").Select
'Set cellocalizar = ActiveSheet.Columns.FindNext(Cliente, LookAt:=xlWhole, LookIn:=xlValues)
'cellocalizar = Cells.FindNext(After:=ActiveCell).Activate
'Produto = Range("B" & i).Value
'If cellocalizar Is Nothing Then doExit
End If
' Wend
' Loop
End If
End If
Next i

End Sub
Voltar ao Topo Ir em baixo
Ver perfil do usuário
alexandrevba



Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

MensagemAssunto: Re: Realizar procura de Cliente, depois do produto e inserir em outra planilha   Sex Maio 29, 2015 4:43 pm

Bom dia!!

Se eu entendi bem, o PROCV não resolve?
Código:
=SEERRO(PROCV($B2;VENDAS!$B:$I;COL(B2);0);"")

Att
Voltar ao Topo Ir em baixo
Ver perfil do usuário
juliananaves



Mensagens : 9
Data de inscrição : 12/05/2015

MensagemAssunto: Re: Realizar procura de Cliente, depois do produto e inserir em outra planilha   Sex Maio 29, 2015 5:14 pm

Infelizmente o Procv não me ajuda nessa questão, foi minha primeira opção antes de partir para a macro. O problema é que tenho duas variaveis de controle o Cliente e o Produto. Pois ao longo da planilha tem cliente com os mesmos produtos. Arrumei o meu código e não estou conseguindo fazer duas coisas, passar para o próximo registro que tenha o mesmo cliente e parar o loop pois não consigo saber quantas vezes o cliente aparecerá. Teria essa solução ai?

Sub Macro1()
'
' Macro1 Macro
'
Dim Coluna As Long
Dim linha As Long
Dim Linha2 As Long
Dim teste As Long

Dim Cliente As Variant
Dim Produto As Variant
Dim Posição As Variant
Dim colar As Variant
Dim Existe As Variant

Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim L As Integer

L = 5


With ThisWorkbook
       With .Worksheets("LICITAÇÕES")
           linha = .Cells(.Rows.Count, "A").End(xlUp).Row
       End With
End With

With ThisWorkbook
       With .Worksheets("Vendas")
           Linha2 = .Cells(.Rows.Count, "A").End(xlUp).Row
       End With
End With


For i = 2 To linha
   ThisWorkbook.Worksheets("Licitações").Select
   Cliente = ThisWorkbook.Worksheets("Licitações").Cells(i, "A").Value
   colar = 7
   ThisWorkbook.Worksheets("Vendas").Select
   teste = ThisWorkbook.Worksheets("Vendas").UsedRange.Columns.Count
   ThisWorkbook.Worksheets("Vendas").Select
   Set cellocalizar = ActiveSheet.Columns.Find(Cliente, LookAt:=xlWhole, LookIn:=xlValues)
   
   If Not cellocalizar Is Nothing Then
      Sheets("Licitações").Select
      Produto = Range("B" & i).Value
      Sheets("vendas").Select
      Posição = cellocalizar.Row
     
      While Produto <> Range("C" & Posição)
         Sheets("vendas").Select
         'Set cellocalizar = Sheets(vendas).Select.Findnex(Cliente)
         'ActiveSheet.Columns.Findnex(Cliente, LookAt:=xlWhole, LookIn:=xlValues)
         Posição = 5 'cellocalizar.Row
      Wend

     
      If Produto = Range("C" & Posição) Then
         
         If Not cellocalizar Is Nothing Then
           L = 5
           Sheets("vendas").Select
           Posição = 5 'cellocalizar.Row
           Coluna = (teste - L)
               
           For k = 0 To Coluna
               ThisWorkbook.Worksheets("Vendas").Select
               ThisWorkbook.Worksheets("Vendas").Cells(Posição, L).Select
               ' Ranger("E" & Posição).Select
               Selection.Copy
               Sheets("Licitações").Select
               Cells(i, colar + k).Select
               ActiveSheet.Paste
               L = L + 1
           Next k
         End If
      End If
   End If
Next i

End Sub
Voltar ao Topo Ir em baixo
Ver perfil do usuário
alexandrevba



Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

MensagemAssunto: Re: Realizar procura de Cliente, depois do produto e inserir em outra planilha   Sex Maio 29, 2015 5:45 pm

Bom dia!!

Por enquanto, esquece a macro, vamos focar no resultado que você pretende atingir.

Então, use a formula matricial abaixo
Código:
=SEERRO(ÍNDICE(VENDAS!$C$2:$I$9000;CORRESP($A2&$B2;VENDAS!$A$2:$A$9000&VENDAS!$B$2:$B$9000;0);COL(A1));"")
Finalizar usando as teclas Ctrl + Shift + Enter

Att
Voltar ao Topo Ir em baixo
Ver perfil do usuário
juliananaves



Mensagens : 9
Data de inscrição : 12/05/2015

MensagemAssunto: Re: Realizar procura de Cliente, depois do produto e inserir em outra planilha   Sex Maio 29, 2015 7:04 pm

alexandrevba escreveu:
Bom dia!!

Por enquanto, esquece a macro, vamos focar no resultado que você pretende atingir.

Então, use a formula matricial abaixo
Código:
=SEERRO(ÍNDICE(VENDAS!$C$2:$I$9000;CORRESP($A2&$B2;VENDAS!$A$2:$A$9000&VENDAS!$B$2:$B$9000;0);COL(A1));"")
Finalizar usando as teclas Ctrl + Shift + Enter

Att

Alexandre fiz isso, mas infelizmente não deu certo! apesar de ter clicado na as teclas CRT SHIFT e Enter
Voltar ao Topo Ir em baixo
Ver perfil do usuário
alexandrevba



Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

MensagemAssunto: Re: Realizar procura de Cliente, depois do produto e inserir em outra planilha   Sex Maio 29, 2015 7:10 pm

Boa tarde!!!

Então mande um modelo dos dados com o resultado pretendido, demonstrando as possibilidades.

Att
Voltar ao Topo Ir em baixo
Ver perfil do usuário
juliananaves



Mensagens : 9
Data de inscrição : 12/05/2015

MensagemAssunto: Re: Realizar procura de Cliente, depois do produto e inserir em outra planilha   Sex Maio 29, 2015 7:40 pm

alexandrevba escreveu:
Boa tarde!!!

Então mande um modelo dos dados com o resultado pretendido, demonstrando as possibilidades.

Att

Alexandre,

Esta escrito tudo ai em cima! Não sei mais o que enviar!? Minha macro precisa apenas de um pequeno ajuste. Sua ideia é boa, mas ao executar, por não saber os parametros, não consegui ajustar os parametros.
Voltar ao Topo Ir em baixo
Ver perfil do usuário
Conteúdo patrocinado




MensagemAssunto: Re: Realizar procura de Cliente, depois do produto e inserir em outra planilha   Hoje à(s) 10:14 pm

Voltar ao Topo Ir em baixo
 
Realizar procura de Cliente, depois do produto e inserir em outra planilha
Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo 
Página 1 de 1
 Tópicos similares
-
» Galera de BRASILIA O que precisar referente a xbox 360 me procura ae .
» [Exame.com] Cresce procura por programadores para smartphones e tablets
» Depois não quer ser zuado .-.
» Tem como adicionar um idioma depois que vc troca o firmware?
» Qual será este produto?

Permissão deste fórum:Você não pode responder aos tópicos neste fórum
Fórum Excel Bácico, Avançado e Vba :: Avançado/VBA :: Excel Avançado/VBA-
Ir para: