首页 > 代码库 > VBA 以文本格式打开DSV

VBA 以文本格式打开DSV

Public Function GetDataFromDSV(fpath As String) As Collection
    Dim AllTextFormat(255) As Integer
    Dim i As Long
    For i = 0 To 255
       AllTextFormat(i) = xlTextFormat
    Next i
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Application.Workbooks.Add
    With ActiveWorkbook.Sheets(1).QueryTables.Add(Connection:= _
        "TEXT;" & fpath, Destination:=Range("$A$1"))
        .Name = "test_1"
        .PreserveFormatting = True
        .TextFilePlatform = 936 简体中文 932 JIS 65001 UTF-8
        .TextFileCommaDelimiter = True
        .TextFileColumnDataTypes = AllTextFormat
        .Refresh BackgroundQuery:=False
    End With
    
    With ActiveWorkbook.Sheets(1)
    执行逻辑代码
    End With
    
    ActiveWorkbook.Close False
    Application.ScreenUpdating = True
    Application.DisplayAlerts = True
End Function