首页 > 解决方案 > VBA 中的 Unicode UTF-8

问题描述

我有这个 VBA 代码将 CSV 转换为 XLSX,这似乎可以工作,但输出 Excel 有奇怪的字符串,如“Aço”和“plástico”,而不是“Aço”或“plástico”。我认为解决方案是包含“Unicode UTF-8”,但我找不到办法。任何帮助,将不胜感激。

Sub CSVtoXLSX()

    Dim xFd As FileDialog
    Dim xSPath As String
    Dim xCSVFile As String
    Dim xWsheet As String

    Application.DisplayAlerts = False
    Application.StatusBar = True
    xWsheet = ActiveWorkbook.Name
    Set xFd = Application.FileDialog(msoFileDialogFolderPicker)
    xFd.Title = "Select a folder:"
    If xFd.Show = -1 Then
        xSPath = xFd.SelectedItems(1)
    Else
        Exit Sub
    End If
    If Right(xSPath, 1) <> "\" Then xSPath = xSPath + "\"
    xCSVFile = Dir(xSPath & "*.csv")
    Do While xCSVFile <> ""
        Application.StatusBar = "Converting: " & xCSVFile
        Workbooks.Open Filename:=xSPath & xCSVFile
        ActiveWorkbook.SaveAs Replace(xSPath & xCSVFile, ".csv", ".xlsx", vbTextCompare), xlWorkbookDefault
        ActiveWorkbook.Close
        Windows(xWsheet).Activate
        xCSVFile = Dir
    Loop
    Application.StatusBar = False
    Application.DisplayAlerts = True

End Sub

标签: vbacsvutf-8

解决方案


推荐阅读