Usuário com melhor resposta
Ajuda em Procv

Pergunta
-
Prezada Comunidade,
Estou com uma duvida no seguinte caso... tenho uma base de dados que um funcionario tem três dependentes ou mais, quando faço um PROCV para puxar um dependente de cada vez, só aparece o primeiro e o ultimo...
=PROCV(B35;'SÓCIOS COOP'!C:G;5;1)
Queria saber como faço para selecionar o primeiro em uma coluna o segundo em outra coluna e assim por diante.
Agradeço desde já ajuda.
Respostas
-
Sub Macro3() ' ' Macro3 Macro ' ' Sheets("Planilha1").Select Range("A1:D15").Select Selection.Copy Sheets("Planilha2").Select Range("F2").Select ActiveSheet.Paste End Sub
Anderson Diniz
- Sugerido como Resposta AndersonFDiniz2 quinta-feira, 3 de agosto de 2017 11:12
- Marcado como Resposta WillGreco sexta-feira, 4 de agosto de 2017 13:21
Todas as Respostas
-
Prezado AndersonFDiniz2,
Desculpe se me expressei mal, mas os depententes estão todos na mesma coluna... como no exemplo:
WILLIAN
Filho
BRUNO YA
WILLIAN
Filho
LUIS FIL
WILLIAN
Filho
YASMIN C
LUIZ FER
Filho
LUCAS DA
LUIZ ROD
Filho
LUCIA HE
JOAO CAR
DANIEL D
Filho
ALINE CA
ANDRE LU
Filho
GABRIEL
ANDRE LU
Filho
LEONARDO
O funcionario Willian tem três dependentes na mesma coluna... tenho que mandar para outra planilha no seguinte modo:
Willian Filho Bruno Filho Luis Filho Yasmin
-
Caro WillGreco,
Eu tenho uma situação semelhante só que uso CNPJ e tipos de despesa. Um CNPJ tem entre 3 e 5 despesas possíveis.
Eu acredito que o ideal é escrever um código em VBA, mas vou tentar fazer apenas com o PROCV e o CONCATENAR.
Para tentar te ajudar eu pensei numa tabela, mais ou menos assim.
FUNCIONÁRIO DEPENDENTE 1 DEPENDENTE 2 DEPENDENTE 3 DEPENDENTE 4 e assim por diante.
WILLIAN BRUNO LUÍS YASMIN
O conceito é o mesmo das colunas, só que eu utilizaria linhas.
O PROCV ficaria, mais ou menos assim: PROCV(Célula onde digita-se o nome do funcionário; TABELA; Número da Coluna) - assim exibe um dependente.
Agora, se você tiver 10 colunas para dependentes, por exemplo, eu utilizaria o CONCATENAR também. Então, a fórmula ficaria assim:
CONCATENAR("Dep. 1.: "; PROCV(Célula onde digita-se o nome do funcionário; TABELA; Número da Coluna);", Dep. 2.: "; PROCV(Célula onde digita-se o nome do funcionário; TABELA; Número da Coluna);", Dep. 3.: "; PROCV(Célula onde digita-se o nome do funcionário; TABELA; Número da Coluna))
Sei lá, sou iniciante aqui no fórum e em Excel, espero que eu possa ter te ajudado a ter uma ideia melhor.
Att
Leandro
- Sugerido como Resposta Leandro Sarno quarta-feira, 2 de agosto de 2017 17:19
-
Muito obrigado Leandro,
Mas infelizmente, a formula que me passou não deu certo... Mas eu fiz um codigo em VBA para tentar resolver essa questão... mas não estou conseguindo que ele copie os dados de uma planilha para outra...
Sub limpar() Dim num As Integer Dim contChave, contPrincipal As Integer Dim numDependente As Integer Dim idAtual As Integer contPrincipal = 2 contChave = 2 Sheets("Chave").Select Cells(contChave, 2).Select Do While ActiveCell.Value <> "" num = ActiveCell.Value numDependente = 0 Sheets("SÓCIOS COOP").Select idAtual = Cells(contPrincipal, 3).Value Do While num = idAtual numDependente = numDependente + 1 Set depAtual = Range(Cells(contPrincipal, 6), Cells(contPrincipal, 8)) Sheets("Chave").Select Set depend = Range(Cells(contChave, (1 + numDependentes * 3)), Cells(contChave, (1 + numDependentes * 3 + 2))) depAtual.Copy depend contPrincipal = contPrincipal + 1 Sheets("SÓCIOS COOP").Select Cells(contPrincipal, 3).Select idAtual = ActiveCell.Value Loop contChave = contChave + 1 Sheets("Chave").Select Cells(contChave, 2).Select Loop End Sub
-
- Sugerido como Resposta AndersonFDiniz2 quinta-feira, 3 de agosto de 2017 03:18
-
-
Option Explicit Sub Macro1() ' ' Macro1 Macro ' ' Range("A1:D15").Select Selection.Copy Sheets("Planilha2").Select ActiveSheet.Paste End Sub
Anderson Diniz
- Sugerido como Resposta AndersonFDiniz2 quinta-feira, 3 de agosto de 2017 11:07
-
Sub Macro2() ' ' Macro2 Macro ' ' Range("A1:D15").Select Selection.Copy Sheets("Planilha1").Select Range("G3").Select ActiveSheet.Paste End Sub
Anderson Diniz
- Sugerido como Resposta AndersonFDiniz2 quinta-feira, 3 de agosto de 2017 11:12
-
Sub Macro3() ' ' Macro3 Macro ' ' Sheets("Planilha1").Select Range("A1:D15").Select Selection.Copy Sheets("Planilha2").Select Range("F2").Select ActiveSheet.Paste End Sub
Anderson Diniz
- Sugerido como Resposta AndersonFDiniz2 quinta-feira, 3 de agosto de 2017 11:12
- Marcado como Resposta WillGreco sexta-feira, 4 de agosto de 2017 13:21