Salva planilha do Excel como CSV em UTF-8 usando o VBA

0

Estou trabalhando na macro a seguir no Excel, que percorre todas as Planilhas em uma pasta de trabalho e salva cada uma em seu próprio arquivo .csv. A questão é que eu preciso para salvar como um .csv codificado com UTF-8. Eu li que a codificação padrão do Excel para .csv é ANSI, o que não funciona para mim porque eu tenho alguns arquivos com caracteres especiais. Alguém sabe como eu posso fazer isso?

A macro:

Public Sub ExportSheetsToCSV()

Dim wsExport As Worksheet
Dim wbkExport As Workbook

For Each wsExport In Worksheets
wsExport.Select
nm = wsExport.Name
If Not IsActiveSheetEmpty() Then
    ActiveSheet.SaveAs fileName:="H:\CSV_Split_Exports\" & nm, FileFormat:=xlCSV
    Application.DisplayAlerts = True
End If

Next wsExport

End Sub
    
por Jason Blocklove 25.07.2017 / 20:47

1 resposta

0

A "maneira fácil" é salvar como "Texto Unicode". Este será o formato delimitado UTF-16, guia , em vez de delimitado por vírgulas.

A maioria dos processos de importação de software permite que você especifique o delimitador ao importar os dados, mas se o seu aplicativo específico não especificar, você poderá pós-processar o arquivo com um find + replace para alterar a guia para vírgula.

    
por 25.07.2017 / 22:59