A como yo lo tengo, crear un botón en un formulario con el nombre de
cargarTXT, le das botón derecho, propiedades, todas, te vas al evento
Al hacer click, le das crear el procedimiento, y lo modificas a como te lo pongo abajo:
Código PHP:
Private Sub cargarTXT_Click()
On Error GoTo Err_cargarTXT
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "frm AgregaTXT"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_CargarTXT:
Exit Sub
Err_cargarTXT:
MsgBox Err.Description
Resume Exit_CargarTXT
End Sub
Si te fijas, hace una invocación a un formulario llamado
frm AgregaTXT, lo creas y le agregas la siguiente lógica:
Código PHP:
Private Sub Form_Open(Cancel As Integer)
' Proposito : Invoca la función Common Dialog GetOpenFileName de Windows
' para permitir al usuario a elegir un archivo txt
' Parámetros : Cancelar -
' Creado/Modificado : 01/07/2003,
On Error GoTo ErrHandler
Dim strFilter As String
Dim Responder As Integer
strFilter = ahtAddFilterItem(strFilter, "Archivos Texto (*.txt)", "*.TXT")
' strFilter = ahtAddFilterItem(strFilter, "dBASE Files (*.dbf)", "*.DBF")
' strFilter = ahtAddFilterItem(strFilter, "Text Files (*.txt)", "*.TXT")
' strFilter = ahtAddFilterItem(strFilter, "All Files (*.*)", "*.*")
' strPathAndFile = ahtCommonFileOpenSave(InitialDir:="C:\", _
' Filter:=strFilter, FilterIndex:=3, Flags:=lngFlags, _
' DialogTitle:="Elija el archivo TXT a procesar")
strPathAndFile = ahtCommonFileOpenSave(Filter:=strFilter, _
FilterIndex:=3, Flags:=ahtOFN_READONLY, _
DialogTitle:="Elija el archivo TXT a procesar")
' lngFlags, _
If Len(strPathAndFile) > 0 Then
Responder = MsgBox("¿Desea Importar el archivo " & strPathAndFile, vbOKCancel, "Importar Archivo")
If Responder = vbOK Then
Importar_txt (strPathAndFile)
MsgBox "Importación de archivo " & IstrPathAndFile & _
" concluida", vbExclamation, "Importación de archivo"
' Resume Exit_Sub
Else
MsgBox "Importación de archivo TXT cancelada", vbExclamation, strPathAndFile
End If
' Me![imgTheImage].Picture = strPathAndFile
Else
MsgBox "No selecciono archivo, no se va a realizar la carga.", vbExclamation, "Error, en selección de archivo"
Cancel = True
End If
' Since you passed in a variable for lngFlags,
' the function places the output flags value in the variable.
DoCmd.Close
Exit_Sub:
Exit Sub
ErrHandler:
MsgBox "Error " & Err.Number & " : " & Err.Description & " in Form_Open", vbExclamation, "Error, en selección de archivo"
Cancel = True
Resume Exit_Sub
End Sub
Private Function Importar_txt(arch_txt As String) As String
DoCmd.TransferText acImportDelim, "Especificación de importación", _
"tabla", arch_txt, False
End Function
Los parámetros
Especificación de importación, creo que lo podes omitir, no recuerdo bien ya que no manejo Access, eso fue un proyecto que hice en mi trabajo por urgencia, así que buscas en internet o la ayuda de access
DoCmd.TransferText acImportDelim