Notifications
Clear all

SEPARAR CONTEÚDO DE LINHAS EM COLUNAS CONDICIONANDO

2 Posts
2 Usuários
0 Reactions
947 Visualizações
(@vidoti)
Posts: 0
New Member
Topic starter
 

Fala galera, preciso de uma ajuda, preciso passar o conteúdo de algumas linhas para colunas, até ai seria fácil, o problemas é que essa separação tem que acontecer nos blocos separados por uma carácter como por exemplo "!", segue exemplo:

A planilha viria assim:

!
Maria
Josefa
Anezia
Matilde
!
Matheus
Carlos
Cafu
Dedé
!
Macaco
Leão
Curubira
Saci
!

Eu preciso separar esses blocos em colunas quebrando exatamente nos "!", ficado assim como esse exemplo:

Maria Josefa Anezia Matilde
Matheus Carlos Cafu Dedé
Macaco Leão Curubira Saci

Alguém consegue me ajudar??

 
Postado : 22/11/2019 3:33 pm
(@willianvct)
Posts: 0
New Member
 

Fala, @Vidoti!
Vi sua mensagem no outro fórum, mandei lá pra ti. Mas, segue aê também, manter a solução correta.
Abs!

/// "Oh, cara.. desculpaê. My fault!

Segue o código corrigido.
Desculpa a demora em responder, final de semana é off! Hehe

https://drive.google.com/file/d/10uhOvO ... sp=sharing

Qualquer coisa, pode chamar aê.
Abs.

Sub Vidoti()

    Dim ulin, lin, col As Integer, actWorksheet As String
    ulin = Cells(Rows.Count, 1).End(xlUp).Row
    lin = 1
    col = 1
    
    actWorksheet = ActiveSheet.Name
    Worksheets.Add
On Error GoTo ErrorSheets
    ActiveSheet.Name = "transpor"
    Sheets(actWorksheet).Select
    
    For l = 1 To ulin
        If l = 1 And Sheets(actWorksheet).Cells(l, 1).Value = "!" Then
        ElseIf Sheets(actWorksheet).Cells(l, 1).Value = "!" Then
            lin = lin + 1
            col = 1
        Else
            Sheets("transpor").Cells(lin, col).Value = Sheets(actWorksheet).Cells(l, 1).Value
            col = col + 1
        End If
    Next
    Exit Sub

ErrorSheets:
    MsgBox "Aba de trabalho [transpor] já existente." + vbNewLine + vbNewLine + _
    "Para INICIAR o algoritmo novamente, por favor, exclua a aba [transpor] e clique em INICIAR.", vbCritical
    Application.DisplayAlerts = False
    ActiveSheet.Delete
    Application.DisplayAlerts = True

End Sub
 
Postado : 25/11/2019 9:01 am