У меня есть MS Access DB с именем *your path*\Test\Test.accdb
Она содержит таблицу с именем Table1
У меня есть два .csv
файла:
с данными даты, сохраненными в формате США какследует:
Date(MM/DD/YYYY),TestField
1/11/2019,C
1/11/2019,D
и
Date(MM/DD/YYYY),TestField
1/14/2019,A
1/14/2019,B
Я загружаю данные из файлов .csv, используя приведенный ниже код VBA (используя ADODB.Recordset),
Sub Upload_CSV_to_MSDB()
Dim xlcon As ADODB.Connection
Dim xlrs As ADODB.Recordset
Dim strSQL As String
Dim strFile_Path_Name As String
Dim cnStr As String
' Set ADO object variable
Set xlcon = New ADODB.Connection
Set xlrs = New ADODB.Recordset
' Set string variables
strFile_Path_Name = "your path \Test\"
strSQL = "INSERT INTO Table1 IN ' your path \Test\Test.accdb' " & _
"SELECT [Date(MM/DD/YYYY)], [TestField] " & _
"FROM Test_Data_20190111.csv"
' Set connection string to CSV file
cnStr = "Provider=Microsoft.ACE.OLEDB.12.0;" & _
"Data Source=" & strFile_Path_Name & ";" & _
"Extended Properties=""text;HDR=Yes;FMT=Delimited;"""
' Execute strSQl by opening record set
xlrs.Open strSQL, cnStr, adOpenStatic, adLockOptimistic
Set xlrs = Nothing
Set xlcon = Nothing
End Sub
Когда я загружаю данные для файла Test_Data_20190111.csv, ADO распознает дату, сохраненную в формате Великобритании, но для Test_Data_20190114.csv даты распознаются как формат США, так как месяца нет 14.
Как можноЯ запускаю что-то похожее на код выше и распознает ли оно какие-либо даты в файле .csv
в формате США?Обратите внимание, что данные имеют даты в американском формате, но мои региональные настройки компьютера имеют британский формат даты;Я не хочу менять эти региональные настройки.
Спасибо.