Importação TXT para...
 
Notifications
Clear all

Importação TXT para Excel separando por abas

3 Posts
2 Usuários
0 Reactions
1,366 Visualizações
(@gpclouro)
Posts: 81
Trusted Member
Topic starter
 

Prezados, boa tarde!

Poderiam me ajudar com um ponto?

Tenho um arquivo em txt com a seguinte estrutura abaixo mais ou menos e precisava de uma macro que ao transformar em excel separe por abas para cada tipo de registro da coluna 1, e para cada sheet repetiríamos a estutura abaixo separadas por coluna e essas colunas podem ser nomeadas de 1 até a quantidade que tiver para cada uma delas?

Alguém possui alguma macro neste sentido? Ou conseguiria me ajudar a construir a mesma? Agradeço pela atenção de todos e espero ter sido claro:

 
Postado : 12/09/2018 11:10 am
brunoxro
(@brunoxro)
Posts: 698
Honorable Member
 

gpclouro,

Anexe um planilha mostrando como seria o resultado final. Assim fica mais fácil tentar ajudar.

att,

 
Postado : 13/09/2018 9:53 pm
(@gpclouro)
Posts: 81
Trusted Member
Topic starter
 

Bruno, obrigado pelo retorno!

Parece que eu consegui com essa macro aqui:

Sub fMain()
    Dim lngBD As Long
    Dim lngLast As Long
    Dim wksBD As Worksheet
    Dim wks As Worksheet
    Dim i As Integer, j As Integer
    
Set wksBD = ThisWorkbook.Sheets("BD")
    With wksBD
        For lngBD = 2 To .Cells(.Rows.Count, "A").End(xlUp).Row
            Set wks = Nothing
            On Error Resume Next
            Set wks = ThisWorkbook.Sheets(CStr(.Cells(lngBD, "A")))
            On Error GoTo 0
            If wks Is Nothing Then
                Set wks = ThisWorkbook.Sheets.Add
                wks.Name = CStr(.Cells(lngBD, "A"))
                wksBD.Rows(1).Copy wks.Rows(1)
            End If
            lngLast = wks.Cells(wks.Rows.Count, "A").End(xlUp).Row + 1
            wksBD.Rows(lngBD).Copy wks.Rows(lngLast)
        Next lngBD
    End With


  For i = 1 To Sheets.Count
   For j = 1 To Sheets.Count - 1
    If UCase$(Sheets(j).Name) > UCase$(Sheets(j + 1).Name) Then
     Sheets(j).Move After:=Sheets(j + 1)
    End If
   Next j
  Next i

End Sub
 
Postado : 14/09/2018 7:20 am