Ojalá me puedan ayudar ya que es urgente. Cualquier aporte por más básico que sea, será beneficioso. Necesito cargar distintos txt en access pero permitiéndole al usuario insertar el path o ruta del archivo, puede ser mediante un inputbox, de manera que se puedan insertar distintos txt en distintas tablas. ¿Es esto posible? Por favor amigos, solicito su ayuda. PD: soy nuevo en la materia.
1 Respuesta
Respuesta
1
1
Anónimo
Te pongo varios ejemplos para importar txt: Function IMPORTAR() 'Declaro varias variables de tipo texto que van a servir para importar o vincular ficheros TXT o tablas: Dim DB As Database Dim VTABLA As String Dim VFICHERO As String Dim VBASE As String '1º.- Activo la base de datos: Set DB = CurrentDb() 'Si quiero importar un fichero de texto: LISTADOS.TXT, con una especificación de importación que se llama ESPECIFICACION_LISTADOS a una tabla que se llame IMPORTACION_LISTADOS: DoCmd.TransferText acImportFixed, "ESPECIFICACION_LISTADOS", "IMPORTACION_LISTADOS", "C:\LISTADOS.TXT" 'Si quiero importar un fichero de texto de nombre variable que está en el directorio C:\ a una tabla con nombre variable: 'Utilizaremos las variables de texto VFICHERO para el fichero.txt y VTABLA para la tabla resultante en ACCESS 'Pedimos al usuario el nombre del fichero txt y el de la tabla: VFICHERO = InputBox("Introducir el nombre del fichero:") VTABLA = InputBox("Introducir el nombre de la tabla:") 'Importamos (ACIMPORTFIXED: Le decimos que es de ancho fijo) DoCmd.TransferText acImportFixed, "ESPECIFICACION_LISTADOS", VTABLA, "C:\" & VFICHERO & ".TXT" 'La especificación (por ej. ESPECIFICACION_LISTADOS") hay que crearla con anterioridad 'Si al importar se crease un fichero de Errores de Importación es mejor borrarlo: DoCmd. DeleteObject acTable, "IMPORTACION_LISTADOS_ErroresdeImportación" 'Para el 1er. Caso 'Si la tabla es variable: DoCmd.DeleteObject acTable, "" & VTABLA & "_ErroresdeImportación" 'Importar o vincular una tabla de una base de datos: 'Importar la tabla BALANCE de la base de datos C:\BALANCES.MDB DoCmd. TransferDatabase acImport, "MICROSOFT ACCESS", "C:\BALANCES.MDB", acTable, "BALANCE", "BALANCE_NUEVO" 'Si la tabla es variable: '1º: Pediriamos al usuario el nombre de la tabla (Con INPUTBOX) DoCmd. TransferDatabase acImport, "MICROSOFT ACCESS", "C:\BALANCES.MDB", acTable, VTABLA, VTABLA 'Si son variables, tanto la tabla como la base: '1º: Pediriamos al usuario el nombre de la tabla VTABLA y el de la base VBASE DoCmd.TransferDatabase acImport, "MICOSOFT ACCESS", "C:\" & VBASE & ".MDB", acTable, VTABLA, VTABLA End Function Espero que te sirvan, saludos Angeles Página supuestos y solucciones en access: http://angelessebas.es/