Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

importar archivo a BD y eliminarlo

Estas en el tema de importar archivo a BD y eliminarlo en el foro de Visual Basic clásico en Foros del Web. Saludos a la comunidad, Tengo un problema que no se como resolver. Estoy preparando una aplicación con access 97 y, mediante el código que muestro ...
  #1 (permalink)  
Antiguo 08/04/2009, 14:54
 
Fecha de Ingreso: noviembre-2006
Mensajes: 35
Antigüedad: 17 años, 5 meses
Puntos: 0
importar archivo a BD y eliminarlo

Saludos a la comunidad,

Tengo un problema que no se como resolver. Estoy preparando una aplicación con access 97 y, mediante el código que muestro a continuación, pretendo seleccionar un archivo de hoja de cálculo situado en un directorio determinado e importarlo a la base de datos:

Private Sub importar_Click()

ChDrive "C:\"
ChDir "C:\Carpeta"
DoCmd.RunCommand acCmdImport

Con este comando se abre el asistente de importación, selecciono el archivo que me interesa y lo importo.
Lo que no consigo de ninguna manera es que una vez importado como tabla en mi base datos, eliminar el archivo que está en el directorio C:\Carpeta.
Si uso la instrucción kill funciona pero me borra todo el contenido de la carpeta, donde puedo tener más de un archivo, y yo solo quiero eliminar el archivo importado.

Por favor, si alguien puede ayudarme...me está llevando de craneo este asunto...

Gracias y hasta pronto!

Rael74
  #2 (permalink)  
Antiguo 13/04/2009, 17:40
Avatar de piojoman  
Fecha de Ingreso: enero-2005
Ubicación: Argentina
Mensajes: 224
Antigüedad: 19 años, 3 meses
Puntos: 3
Respuesta: importar archivo a BD y eliminarlo

podes usar la API deleteFile...

'Esto va arriba del todo
Private Declare Function DeleteFile Lib "kernel32" Alias "DeleteFileA" (ByVal lpFileName As String) As Long

y agrega esta linea a importar_click() a lo ultimo...
DeleteFile "C:\......." '->Pone la ruta del archivo a borrar

lo que si, te recomiendo que antes de que borre el archivo verifique el programa que creo el otro, para mayor seguridad, imagina que se crea un error, si simplemente agregas la linea que marque no abra posibilidad a re intentar el procedimiento, por eso me parece mas adecuado que primero busque en la carpeta el nuevo archivo si esta creado....
  #3 (permalink)  
Antiguo 14/04/2009, 02:46
 
Fecha de Ingreso: noviembre-2006
Mensajes: 35
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: importar archivo a BD y eliminarlo

Gracias por tomarte la molestia en ayudarme, pero creo que no sigo correctamente tus instrucciones.
Mira, el codigo que ejecuta la importación de mi archivo, es el siguiente:

Option Compare Database
Option Explicit
Private Declare Function DeleteFile Lib "kernel32" Alias "DeleteFileA" (ByVal lpFileName As String) As Long


Private Sub importar_Click()

Dim cambiarnombre As String

Esta parte de código , establece la ruta de acceso al archivo y, a continuación, se abre el asistente de importación
ChDrive "J:\"
ChDir "J:\RUTA\Carpeta"
DoCmd.RunCommand acCmdImport

Una vez importado el archivo que yo quiero, esta parte de código selecciona el objeto y lo renombro
DoCmd.SelectObject acTable, , -1
pp = (Application.CurrentObjectName)
DoCmd.Rename ("?" + pp)

Ahora, siguiendo tus instrucciones, incorporo esta linea, para borrar el archivo
DeleteFile "J:\RUTA\Carpeta\nombredearchivo.xls

End Sub
Y observo que no lo elimina.

Aparte de esto, el problema es otro:en la linea DeleteFile no se como decirle que archivo debe eliminar, ya que la Carpeta puede contener varios archivos y, de hecho, yo lo selecciono mediante el asistente
No estoy seguro de explicarme bien, espero no robarte mucho tiempo.

Saludos,
  #4 (permalink)  
Antiguo 14/04/2009, 07:30
Avatar de Sergestux  
Fecha de Ingreso: agosto-2007
Ubicación: Tapachula
Mensajes: 1.218
Antigüedad: 16 años, 8 meses
Puntos: 20
Mejor pon la linea que tenias usando el comando kill

por que el ejemplo de kill es claro y sencillo de usar

Código visualbasic:
Ver original
  1. ' Se supone que PRUEBA es un archivo que contiene información.
  2. Kill "PRUEBA"   ' Se elimina el archivo.
  3. ' Se eliminan todos los archivos *.TXT del directorio actual.
  4. Kill "*.TXT"

Última edición por David; 14/04/2009 a las 07:39 Razón: Combinar mensajes
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:51.