Мне нужно импортировать кучу файлов в доступ, используя фиксированную (.txt) спецификацию импорта.Однако, хотя эти файлы хорошо открываются в блокноте, они не являются файлами .txt и, следовательно, импорт не выполняется.
Исходные файлы упакованы в архив.У меня уже есть код ниже (извлеченный и неполный), чтобы разархивировать их и поместить в папку.После каждого импорта разархивированный файл затем удаляется на свободное место.
If LCase(Right(fil.Name, 3)) = "zip" Then
Status "Unzip file '" & fil.Name & "'..."
currentISO = Left(fil.Name, 2)
UnZipFiles iZip, fil.Path
iTimeEnlapsed = 0
'Pause until the file is completely extracted
Do Until fso.GetFolder(iZip).Files.Count > 0
Call Sleep(Int(fil.Size / (2 * 20)))
'If unzip failed after 15sec it will be invoked again
iTimeEnlapsed = iTimeEnlapsed + 1000
If iTimeEnlapsed > 50000 Then
If MsgBox("UnZip Error: " & fil.Name & vbCrLf & vbCrLf & "Do you want to SKIP this file and resume IMPORT process?", vbYesNo + vbQuestion, "UNZIP Errot - Resume ") = vbYes Then
Exit Do
End If
UnZipFiles iZip, fil.Path
iTimeEnlapsed = 0
Exit Do
End If
Loop
For Each fil2 In fso.GetFolder(iZip).Files
'Import the files (after converting them to .txt)
DoCmd.TransferText acImportFixed, "Daily_Import", "Import_Data_Dump", fil.Path
Kill fil2
Next fil2
Set fil2 = Nothing
Else
End If
После приведенного выше кода (для каждого fil2) импорт выполняется из пути к файлу (который легко изменить).Тем не менее, это не будет работать, если мои файлы не заканчиваются на .txt.Все они XXXXX вместо XXXXX.txt, где они не имеют расширение файла