MS Access 2016 Importar múltiples archivos CSV


0

Estoy tratando de importar varios archivos csv, todos en el mismo directorio en MS Access 2016.

Este es el módulo VBA que tengo actualmente, gracias a physics2010 , pero no funciona. ¿Algun consejo?

Option Compare Database
Option Explicit

Function DoImport()

Dim strPathFile As String
Dim strFile As String
Dim strPath As String
Dim strTable As String
Dim blnHasFieldNames As Boolean

' Change this next line to True if the first row in CSV worksheet
' has field names
blnHasFieldNames = True

' Replace C:\Documents\ with the real path to the folder that
' contains the CSV files
strPath = "C:\Users\xxx"

' Replace tablename with the real name of the table into which
' the data are to be imported
strTable = "Table1"

strFile = Dir(strPath & "*.csv")


Do While Len(strFile) > 0
      strTable = Left(strFile, Len(strFile) - 4)
      strPathFile = strPath & strFile
      DoCmd.TransferText acImportDelim, , strTable, strPathFile, blnHasFieldNames


' Uncomment out the next code step if you want to delete the
' EXCEL file after it's been imported
'       Kill strPathFile

      strFile = Dir()

Loop


   MsgBox "done"


End Function

Escribiste "no funciona": ¿recibes un mensaje de error? ¿Intentaste depurar el código para ver dónde falla?
Atzmon

Simplemente no hace nada en esta etapa. Debo admitir que soy nuevo en Access, pero tengo algo de experiencia en codificación. Parece que nunca entra en el bucle While, como si la longitud de strFile nunca fuera mayor que 1. Eso es extraño, porque tengo varios archivos csv en el directorio.
Adre

Intenta cambiar strPath = "C:\Users\xxx"a strPath = "C:\Users\xxx\".
Atzmon el

Respuestas:


0

Gracias a Atzmon , el problema estaba en mi strPath, en lugar de strPath = "C:\Users\xxx"serstrPath = "C:\Users\xxx\"

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.