Мне нужно импортировать текстовый файл в таблицу Access, но используя условия импорта в TXT-файле.Код VBA - импорт текстового файла в таблицу доступа - с условием
Ниже приведен код VBA. Он работает только тогда, когда вы не используете предложение WHERE, потому что запрашиваете ввод параметра. Я думаю, что проблема заключается в отсутствующей спецификации формата поля.
Какие корректировки вы рекомендуете? Мы ценим любые предложения.
TEXT FILE - Teste.txt
1;24;433;43;5
2;436;424;43;24
3;5454;656;656;555
4;545;545;0;0
5;65465;756;0;0
Мой код VBA Access:
Sub MyTableImport()
Dim sqlStr As String
sqlStr = "SELECT * INTO NewTable "
sqlStr = sqlStr & " FROM [Text;HDR=Yes;FMT=Delimited;Database=C:\Temp].Teste.txt "
sqlStr = sqlStr & " WHERE field4 <> '0' AND field5 <> '0';"
DoCmd.SetWarnings False
DoCmd.RunSQL sqlStr
DoCmd.SetWarnings True
End Sub
Вы можете просто опустить предложение WHERE и выполнить поле DELETE * FROM NewTable WHERE4 = '0' ИЛИ field5 = '0'' после импорта. – Andre
Пожалуйста, не используйте setwarnings, это небезопасно и системно. Вместо этого используйте Execute напротив экземпляра базы данных. – Fionnuala
Возможно, вам понадобится файл schema.ini, если у вас есть нестандартные разделители http://stackoverflow.com/questions/12137085/changing-connection-string-in-excel-messes-up-column-data-types/ 12145949 # 12145949 – Fionnuala