Notifications
Clear all

Ajuda - Macro para criar linhas a partir de colunas

6 Posts
2 Usuários
0 Reactions
1,294 Visualizações
(@artzn)
Posts: 32
Eminent Member
Topic starter
 

Alguem consegue me ajudar? preciso construir uma macro para organizar uma planilha onde tenho na msm celula mais de um equipamento e preciso que essa celula seja replicada em duas linhas, apenas separando os itens da coluna equipamentos que são separados por "," .. como no exemplo em anexo..

sou novo e nao muito habilidoso com as macros.

Numero Ofensor Equipamentos Afetados
1 Energia equip01
2 dados equip02
3 dados equip03,equip04
4 dados equip03,equip05
5 Energia equip10,equip15,equip43,equip54,equip48
6 Transmissão equip01
7 Plataforma de Dados equip10,equip05,equip14

Numero Ofensor Equipamentos Afetados
1 Energia equip01
2 dados equip02
3 dados equip03
3 dados equip04

4 dados equip03,equip05
5 Energia equip10,equip15,equip43,equip54,equip48
6 Transmissão equip01
7 Plataforma de Dados equip10,equip05,equip14

 
Postado : 14/03/2016 11:32 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

use a nossa base de dados!!
https://cse.google.com.br/cse?cx=partne ... gsc.page=1

Att

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 14/03/2016 11:47 am
(@artzn)
Posts: 32
Eminent Member
Topic starter
 

Sim, separar eu já encontrei, mas gostaria de uma macro que criasse a nova linha igual a anterior, apenas trocando campos do equipamento afetado..

 
Postado : 14/03/2016 12:16 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Veja
https://cse.google.com.br/cse?cx=partne ... gsc.page=1

Att

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 14/03/2016 12:31 pm
(@artzn)
Posts: 32
Eminent Member
Topic starter
 

Desculpe a insistência, mas não é exatamente isso que procuro...

O que eu preciso fazer da macro é o seguinte...

Tenho uma planilha nesse formato:

Numero Ofensor Equipamentos Afetados
1 Energia equip01
2 dados equip02
3 dados equip03,equip04
4 dados equip03,equip05
5 Energia equip10,equip15,equip43,equip54,equip48
6 Transmissão equip01
7 Plataforma de Dados equip10,equip05,equip14

Preciso chegar nesse, fiz apenas o que esta em amarelo para entender:

Numero Ofensor Equipamentos Afetados
1 Energia equip01
2 dados equip02
3 dados equip03
3 dados equip04

4 dados equip03,equip05
5 Energia equip10,equip15,equip43,equip54,equip48
6 Transmissão equip01
7 Plataforma de Dados equip10,equip05,equip14

Já consegui fazer uma macro que separa o campo equipamento afetados em outras colunas, ficando assim:

Numero Ofensor Equipamentos Afetados
1 Energia equip01
2 dados equip02
3 dados equip03 equip04
4 dados equip03 equip05
5 Energia equip10 equip15 equip43 equip54 equip48
6 Transmissão equip01
7 Plataforma de Dados equip10 equip05 equip14

Mas preciso que cada coluna nova dessa criada seja uma nova linha com os campos numero e ofensor que eles pertencem.. como o marcado em negrito la em cima..

 
Postado : 14/03/2016 12:48 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!

Digamos que eu entendi....

E que os dados estão em Coluna A, nas outras colunas B,C,D, não tem nada (dados).
Então...

Sub AleVBA_19513()
Dim LR As Long, i As Long
Dim X As Variant
Application.ScreenUpdating = False
LR = Range("A" & Rows.Count).End(xlUp).Row
Columns("A").Insert
For i = LR To 1 Step -1
    With Range("B" & i)
        If InStr(.Value, ",") = 0 Then
            .Offset(, -1).Value = .Value
        Else
            X = Split(.Value, ",")
            .Offset(1).Resize(UBound(X)).EntireRow.Insert
            .Offset(, -1).Resize(UBound(X) - LBound(X) + 1).Value = Application.Transpose(X)
        End If
    End With
Next i
Columns("B:C").Delete
Application.ScreenUpdating = True
End Sub

Att

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 15/03/2016 6:30 am