Página 1 de 1

Transposição de dados de matriz retangular para coluna

Enviado: 24 Set 2021 às 16:43
por GabrielFurtado
Opa pessoal! Boa tarde!

Estou quebrando a cabeça aqui e não consegui resolver com uma macro que transponha os dados de uma matriz retangular, ignorando dados em branco, e jogando eles todos em uma coluna (mantendo o indexador da linha como dado na coluna ao lado - Identifiquei em vermelho na imagem)

Por fórmulas até tive algum avanço... Mas gostaria mesmo de um VBA que eu executasse e fizesse automático

Re: Transposição de dados de matriz retangular para coluna

Enviado: 24 Set 2021 às 18:41
por osvaldomp
Olá, @GabrielFurtado .

Fica fácil elaborar uma solução se a questão é bem explicada, como você fez e se o resultado desejado é colocado corretamente na planilha de exemplo, como você fez. Parabéns! :D

Veja se o código abaixo atende. Funciona para qualquer quantidade de dados. O resultado será colocado nas colunas I:J.
Código: Selecionar todos
Sub RearranjaDados()
 Dim k As Long, v As Long
  For k = 3 To Cells(Rows.Count, 3).End(3).Row
   v = Cells(k, 3).End(2).Column - 3
   Cells(Rows.Count, 9).End(3)(2).Resize(v) = Cells(k, 3)
   Cells(Rows.Count, 9).End(3)(2 - v, 2).Resize(v) = Application.Transpose(Cells(k, 4).Resize(, v).Value)
  Next k
End Sub

Re: Transposição de dados de matriz retangular para coluna

Enviado: 28 Set 2021 às 11:17
por GabrielFurtado
@osvaldomp, Pow!! Maravilha! Ficou ótimo! Muito Obrigado!
Vou tentar entender os códigos aqui agora. Valeuzão!