Ir ao conteúdo

Excel Montar arquivo em formato separado por ponto e virgula


Ir à solução Resolvido por Midori,

Posts recomendados

  • Solução
Postado

@williams.matos Veja se assim resolve, o arquivo será salvo no mesmo diretório da planilha,

 

Sub CriaArquivoCSV()
    Dim Tabela      As ListObject
    Dim Registro    As Range
    Dim StrLinha    As String
    Dim ID          As String
    Dim ArquivoCSV  As Integer
    
    Set Tabela = ThisWorkbook.Sheets("Planilha1").[Tabela2].ListObject
    ArquivoCSV = FreeFile
    Open ThisWorkbook.Path & "\ArquivoTeste.csv" For Append As ArquivoCSV

    If Not Tabela.DataBodyRange Is Nothing Then
        ID = Tabela.DataBodyRange.Rows.Cells(1, 1).Value
        For Each Registro In Tabela.DataBodyRange.Rows
            If ID <> Registro.Columns(1).Value Then
                Print #ArquivoCSV, ID & StrLinha
                StrLinha = ""
            End If
            StrLinha = StrLinha & ";" & Registro.Columns(4).Value
            ID = Registro.Columns(1).Value
        Next Registro
    End If

    Close ArquivoCSV
End Sub

 

Postado
Em 31/10/2023 às 11:13, Midori disse:

@williams.matos Veja se assim resolve, o arquivo será salvo no mesmo diretório da planilha,

 

Sub CriaArquivoCSV()
    Dim Tabela      As ListObject
    Dim Registro    As Range
    Dim StrLinha    As String
    Dim ID          As String
    Dim ArquivoCSV  As Integer
    
    Set Tabela = ThisWorkbook.Sheets("Planilha1").[Tabela2].ListObject
    ArquivoCSV = FreeFile
    Open ThisWorkbook.Path & "\ArquivoTeste.csv" For Append As ArquivoCSV

    If Not Tabela.DataBodyRange Is Nothing Then
        ID = Tabela.DataBodyRange.Rows.Cells(1, 1).Value
        For Each Registro In Tabela.DataBodyRange.Rows
            If ID <> Registro.Columns(1).Value Then
                Print #ArquivoCSV, ID & StrLinha
                StrLinha = ""
            End If
            StrLinha = StrLinha & ";" & Registro.Columns(4).Value
            ID = Registro.Columns(1).Value
        Next Registro
    End If

    Close ArquivoCSV
End Sub

 

Como utilizo? como comentei antes eu não conheço MACRO, eu até inseri esse código que me enviou la onde cria Macro no excel, mas não sei como fazer executar e trazer o resultado, desculpe insistir mas conseguiria usar meu arquivo inserindo essa macro nele? pois ai entenderia melhor, nunca mexi em Macro nem VBA.

Postado
22 minutos atrás, williams.matos disse:

eu até inseri esse código que me enviou la onde cria Macro no excel, mas não sei como fazer executar

Salve a planilha com a extensão xlsm. Para executar a macro abra o módulo (pode ser com Alt+F11) onde colou o código e digite F5.

Postado
8 minutos atrás, Midori disse:

Salve a planilha com a extensão xlsm. Para executar a macro abra o módulo (pode ser com Alt+F11) onde colou o código e digite F5.

Fiz este processo, mas parece nada acontecer, ele deveria gerar um novo arquivo em csv?

  • mês depois...

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...