VBA, MS Access MS Access в примерах

Импорт CSV файла в кодировке UTF 8

По материалам: https://www.cyberforum.ru/ms-access/thread3117608.html#post16952002
и ниже: https://www.cyberforum.ru/ms-access/thread3117608.html#post16952156

Тут показана "болванка" получения данных, без собственно импорта.
Полный вариант кода - в примере ниже.

Private Sub ImportCSV()
' Импорт CSV файла в кодировке UTF 8
' -------------------------------------------------------------------------------------------------/
Dim sVal$, sFilePath$, sFileName$, iValT%, iVal%, vVal
Dim rst As DAO.Recordset
On Error GoTo ImportCSV_Err
    
'... Тут ваш путь к файлу !!!:
    sFilePath = "d:\ ...\ImportedData0.csv"
    
    iVal = InStrRev(sFilePath, "\")
    sFileName = Mid(sFilePath, iVal + 1)
    sFilePath = Mid(sFilePath, 1, iVal - 1)
    
    sVal = "SELECT * FROM [" & sFileName & "] IN '" & sFilePath & "'[TEXT;HDR=yes;CharacterSet=65001];"
    'Debug.Print sVal

    iVal = 0
    Set rst = CurrentDb.OpenRecordset(sVal, dbOpenSnapshot)   'Только просмотр
    With rst
        Do Until .EOF = True
            vVal = rst("titl")
            If Len(vVal & "") > 0 Then
                'Debug.Print vVal & ""
                iValT = iValT + 1
            End If
            If Len(rst("sku0") & "") > 0 Then iVal = iVal + 1
            '...
            .MoveNext
        Loop
    End With
    
    sVal = "Обнаружено " & iValT & "товаров в " & iVal & " вариациях."
    'Debug.Print sVal
    MsgBox sVal, vbInformation, "Отчёт"
' ------------------------------------------------- ------------------------------------------------/
ImportCSV_End:
    On Error Resume Next
    rst.Close: Set rst = Nothing
    Err.Clear
    Exit Sub
' -------------------------------------------------------------------------------------------------/
ImportCSV_Err:
    MsgBox "Error " & Err.Number & " (" & Err.Description & ") in Sub :" & _
        "ImportCSV - Module1.", vbCritical, "Error!"
    Err.Clear
    Resume ImportCSV_End
End Sub



Полный вариант с "расфасовкой" данных по двум таблицам в примере:




Скачать

MSA-2003 ( 23 kB) Пример


Назад ToTop
L.E. 23.06.2023
Рейтинг@Mail.ru