Ir ao conteúdo
  • Cadastre-se
antoniofmoura

Excel RESOLVIDO Migrar dados de uma planilha para outra

Posts recomendados

REQUERIMENTO ok.xlsxEstou querendo pegar os dados do contrato (SITUAÇÃO ;CONTRATO;INCIO; FINAL ;VALOR; VALOR DA PARCELA;QTD. PARCELAS)  e passar para outra planinha ( REQUERIMENTO) organizado como fiz um exemplo. Meu problema e pegar o nome , cpf  e os  contratos 2,3,4... pois estão desorganizados. 

Compartilhar este post


Link para o post
Compartilhar em outros sites

@antoniofmoura O que determina o número de linhas de cada nome é a quantidade de contratos?

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Midori cada linha tem os contratos que uma pessoa tem com determinado banco. Exemplo a pessoa da linha 1 tem 1 contrato com o banco 623, e essa mesma pessoa esta na linha 2 , mas tendo 1 contrato com o banco 29. 

Compartilhar este post


Link para o post
Compartilhar em outros sites

@antoniofmoura Sim e na linha requerimento tem 6 linhas dessa pessoa. Por isso perguntei se a quantidade de contratos determina o número de linhas/registros de cada pessoa. A planilha consignado tem várias colunas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Midori sim , eu quero que na planilha de requerimento fique todos os contrato com o nome e o cpf 

Compartilhar este post


Link para o post
Compartilhar em outros sites

@antoniofmoura  A macro pega o range H2:H12, quando houver mais linhas é fácil editar para implementar uma forma de pegar até a última linha.

 

Quando testei e comparei com os dados anteriores do requerimento só deu diferença no total da LIDIA, talvez seja de algum dado que você não tinha copiado antes.

 

Sub Macro()
    Dim R       As Range
    Dim C, L    As Integer
    Dim Plan    As Worksheet
    
    Set Plan = ThisWorkbook.Worksheets("REQUERIMENTO ")
    
    With ThisWorkbook.Worksheets("CONSIGNADO")
        For Each R In .Range("H2:H12")
            For C = 27 To 83 Step 7
                If .Cells(R.Row, C) <> "" Then
                    L = Plan.Range("A:A").End(xlDown).Row + 1
                    R.Offset(0, 0).Copy Plan.Cells(L, 1)
                    R.Offset(0, 1).Copy Plan.Cells(L, 2)
                    .Cells(R.Row, C - 1).Resize(1, 7).Copy Plan.Cells(L, 3)
                End If
            Next C
        Next R
    End With
End Sub

 

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Midori Muito obrigado , você me ajudou muito. Como posso ajudar a comunidade ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

@antoniofmoura Agora vi que a macro pode apresentar erro se a planilha Requerimento tiver apenas os títulos.

 

Para evitar isso faça esta alteração no código, substituindo a linha da atribuição de L por essas,

 

If Plan.Range("A2") = "" Then
    L = 2
Else
    L = Plan.Range("A:A").End(xlDown).Row + 1
End If

 

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
23 horas atrás, antoniofmoura disse:

@Midori Muito obrigado , você me ajudou muito. Como posso ajudar a comunidade ?

 

Se tiver alguma duvida que você saiba responder é só ajudar.

 

Você se esqueceu de clicar em Curtir nas respostas da Midori

 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





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...

hardware-hacking.jpg

Aprenda a hackear dispositivos de hardware!

CLIQUE AQUI E CONFIRA AGORA MESMO!