MyTetra Share
Делитесь знаниями!
Access.Импорт текстовых файлов в таблицу (v2)
16.03.2019
23:43
Текстовые метки: k_Импорт из текста,
Раздел: !Закладки - VBA - Access - Импорт из текста

решил пока пойти по пути TransferText ...
(брать файлы из папки Incoming\, менять расширение на txt, ложить в папку Working\ и производить импорт).

Public Function CheckFiles()

Dim strGlobalPath As String

Dim strIncomingPath As String

Dim strWorkingPath As String

 

' Определение путей для файлов

   strGlobalPath = Application.CurrentProject.Path & "\"

 strIncomingPath = strGlobalPath & "Incoming\"

  strWorkingPath = strGlobalPath & "Working\"

 

' Импорт текстовых файлов с помощью TransferText

Dim strTableName As String

Dim strFileName As String

    strTableName = "ALM_2006"

    strFileName = strWorkingPath & "060401.txt"

    strSpecificationName = "ALMFile_Specification"

 

DoCmd.TransferText acImportFixed, _

                   strSpecificationName, strTableName, strFileName, _

                   False, ""

End Function



Путь с DoCmd.RunSQL - тоже неплох, но более медленный
(импорт 1000 записей - 4 секунды против 0,29 у DoCmd.TransferText)
Да и делить по полям текстовый файл прийдется вручную,
у DoCmd.TransferText для этого спецификация работает.

Код :

Public Function CheckFiles1()

' Импорт текстовых файлов с помощью SQL

Dim strTableName As String

    strTableName = "ALM_2006"

 

Dim strSQL As String

Dim vDate As Date

Dim vTime As Date

Dim strDescription As String

     

    vDate = Date

    vTime = Time

    strDescription = "Запись осуществлена в:"

 

strSQL = "insert into " & strTableName & "(Дата, Время, Описание)" _

           & "values (" & Chr(39) & vDate & Chr(39) & ", " _

                        & Chr(39) & vTime & Chr(39) & ", " _

                        & Chr(39) & strDescription & Chr(39) & ");"

DoCmd.RunSQL strSQL

 

End Function


 
MyTetra Share v.0.52
Яндекс индекс цитирования