Ir ao conteúdo

Excel Transpor dados retirando os valores repetidos


Ir à solução Resolvido por Visitante,

Posts recomendados

Postado

Boa Tarde Pessoal,

 

Sei que ja criei um tópico que esta em aberto ainda, mas agora venho com outro problema para saber se existe alguma solução viavel. Obs: Não tem nada a ver com o anterior ( e o outro eu consegui fazer de forma manual mesmo).

 

Só que agora estou utilizando o excel com base em um banco de dados, que no caso é o access. E estou com uma dificuldade imensa pois o que quero fazer é transformar dados que estão representados colunas em linhas, mas somente para os dados que representam eles no caso o id_ponto que é o padrão de referencia que temos.

 

Vou tentar exemplificar tudo numa tabela e espero que possam ajudar desde já agradeço.

 

Creio que o exemplo esteja bem explicativo, mas conforme surgir alguma duvida ou não entendimento por favor falar aqui no tópico.

E se não souber ou não ter solução por favor falar aqui no neste tópico para que eu recorra a metodos mais simples mesmo que massantes. 

 

Obrigado desde já

 

Exemplo_Clube.xlsx

 

Observação: os dados da outro topico foram mais de 100 mil,esse agora são 200 mil, ou seja 2 semanas pra fazer na mão, hahaha se tiver uma solução mais viavel agradeço, caso não tenha ja estou adiantando o processo na mão

  • Solução
Postado

Se você quiser experimentar uma solução via macro, segue abaixo um código como sugestão.

 

Sub ReplicaDadosEmLinha()
 Dim c As Long, k As Long, x As Long, v As Long
  If [I2] <> "" Then Range("I2:AA" & Cells(Rows.Count, 9).End(3).Row).Value = ""
  For c = 2 To Cells(Rows.Count, 1).End(3).Row
   k = Application.CountIf([A:A], Cells(c, 1))
    Cells(Rows.Count, 9).End(3)(2).Resize(, 4).Value = Cells(c, 1).Resize(, 4).Value
    If k > 1 Then
    For x = c + 1 To c + k - 1
     Cells(Rows.Count, 9).End(3)(1, v + 5).Resize(, 3).Value = Cells(x, 2).Resize(, 3).Value
     v = v + 3
    Next x
   End If
   c = c + k - 1: v = 0
  Next c
End Sub

 

Postado

Olá @osvaldomp, poderia me dizer como funciona essa macro, pois nunca mexi com essa parte do excel.

As soluções que eu fiz foi utilizando a união das funções indice e corresp, mas só consigo obter as primeiras variáveis dos dados repetidos e não as subsequentes.

 

Mas desde já agrade muito, o seu apoio.

 

Obs: Quando eu digo funciona, é o que o código está fazendo e não como faz ela rodar hahahaha, só pra deixar claro.

Postado
17 horas atrás, joze da silva disse:

Observação: os dados da outro topico foram mais de 100 mil,esse agora são 200 mil, ...

 

2 minutos atrás, joze da silva disse:

As soluções que eu fiz foi utilizando a união das funções indice e corresp, mas só consigo obter as primeiras variáveis dos dados repetidos e não as subsequentes.

 

Serão tantas fórmulas que o recálculo da planilha irá derreter o seu processador ... 🔥:tw_tounge_wink:

 

Para instalar e rodar o código:

Instale o código abaixo em um módulo comum, assim:
1. copie o código daqui
2. a partir da planilha em que estão os dados tecle 'Alt+F11' para acessar o editor de VBA
3. no menu do editor  Inserir / Módulo
4. cole o código na janela em branco que vai se abrir
5. feito! 'Alt+Q' para retornar para a planilha e testar

 

para rodar o código:
6. tecle 'Alt+F8' / selecione a macro correspondente / Executar, ou insira um botão na planilha e vincule-o à macro ou vincule-a a um atalho de teclado (Alt+F8 > Opções).

 

 

 

 

Postado

Beleza @osvaldomp vou seguir esse procedimento.

 

Caso meu computador não derreta eu retorno aqui no tópico para falar o que ocorreu.

 

Mas desde já agradeço muito. E uma duvida só para desencargo de consciência, o tópico anterior que eu criei, não tem solução tem que ser manual mesmo? Do jeito que eu fiz?

 

Atenciosamente

Postado

@osvaldomp Quero dizer e agradecer muito a sua ajuda, o código caiu como uma luva, e agora da pra fazer as analises necessárias para o projeto. Daqui pra frente eu me viro hhaahah, mas se precisar de mais alguma coisa eu recorro novamente. 

 

Gostaria de entender somente como funciona o código tipo linha por linha, porque essa linguagem vba eu não tenho muito conhecimento, se puder fazer isso vou ficar muito grato. E isso só me animou a aprender mais sobre essa linguagem e as magicas possíveis para fazer com isso.

 

Atenciosamente

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário 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...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!