Disculpa la tardanza, pero tu pregunta me dio chollo, pues es algo que nunca había hecho.
Bien, he aquí lo que conseguí: En tu botón, en el evento Al hacer click, le pones este código:
Dim miSQL As String
'Importamos el DBF a una tabla temporal
DoCmd. TransferDatabase acImport, "dBase III", "RutadetuBD", acTable, "NombreArchivo.dbf", "Temp"
'Quitamos los avisos
DoCmd.SetWarnings False
'Insertamos los registros de la tabla temporal en la final
miSQL = "INSERT INTO NombreTabla SELECT * FROM Temp"
DoCmd.RunSQL miSQL
'Borramos la tabla temporal
miSQL = "DROP TABLE Temp"
DoCmd.RunSQL miSQL
'Activamos los avisos
DoCmd.SetWarnings True
Comentarios al código:
1º/ tienes que cambiar lo que está en negrita por los nombres que tu tengas. RutadetuBD será la ruta completa donde tengas la BD (por ej, C:\Mis Documentos\), NombreArchivo será el nombre del tu archivo dbf a importar, y NombreTabla será el nombre de la tabla de destino de los datos importados.
2º/ La tabla de destino, la tienes que tener ya creada, con la misma estructura que el archivo dbf (si no la tienes creada, puedes hacerlo rápidamente con este codigo:
DoCmd. TransferDatabase acImport, "dBase III", "RutadetuBD", acTable, "NombreArchivo.dbf", "NombreTabla", True )
3º/ Lo que hace el código, es importar el dbf a una tabla "temporal", luego pasar los registros a la tabla definitiva y borrar la tabla "Temporal"
4º/ Si no te funciona, prueba cambiando "dBase III" por "dBase IV" o "dBase 5.0"
Una de las soluciones más sencillas y elegantes que he visto. Muchas gracias!! - Aiasi Bor