Discussion:
Borrar Archivo desde Macro
(demasiado antiguo para responder)
Marvin
2005-06-24 18:19:03 UTC
Permalink
Que tal Grupo, una pregunta, sé que existen formas para abrir y crear
archivos desde una macro, pero existe alguna forma de poder ELIMINAR un
archivo desde una macro.... me podrían apoyar gracias.
Manuel Romero
2005-06-24 19:00:48 UTC
Permalink
Usa la instruccion Kill, pero asegurate que el archivo no este abierto
Post by Marvin
Que tal Grupo, una pregunta, sé que existen formas para abrir y crear
archivos desde una macro, pero existe alguna forma de poder ELIMINAR un
archivo desde una macro.... me podrían apoyar gracias.
Marvin
2005-06-24 22:34:01 UTC
Permalink
Gracias Manuel, pero, conoces la instrucción completa???
Post by Manuel Romero
Usa la instruccion Kill, pero asegurate que el archivo no este abierto
Post by Marvin
Que tal Grupo, una pregunta, sé que existen formas para abrir y crear
archivos desde una macro, pero existe alguna forma de poder ELIMINAR un
archivo desde una macro.... me podrían apoyar gracias.
Manuel Romero
2005-06-24 22:41:38 UTC
Permalink
Kill "nombre del archivo"

Busca en la ayuda de VBA
Post by Marvin
Gracias Manuel, pero, conoces la instrucción completa???
Post by Manuel Romero
Usa la instruccion Kill, pero asegurate que el archivo no este abierto
Post by Marvin
Que tal Grupo, una pregunta, sé que existen formas para abrir y crear
archivos desde una macro, pero existe alguna forma de poder ELIMINAR un
archivo desde una macro.... me podrían apoyar gracias.
KL
2005-06-24 22:50:05 UTC
Permalink
Hola Marvin,

Prueba esto:

Sub test()
Dim Ruta As String, wb As Workbook
Ruta = "E:\Prueba.xls"
If Dir(Ruta) = "" Then
MsgBox "Archivo no encontrado.": Exit Sub
End If
On Error Resume Next
Set wb = Workbooks(Dir(Ruta))
If Not wb Is Nothing Then
MsgBox "No se puede borrar archivo abierto"
Else
Kill Ruta
End If
End Sub

Saludos,
KL
Gracias Manuel, pero, conoces la instruccion completa???
Post by Manuel Romero
Usa la instruccion Kill, pero asegurate que el archivo no este abierto
Que tal Grupo, una pregunta, se que existen formas para abrir y crear
archivos desde una macro, pero existe alguna forma de poder ELIMINAR un
archivo desde una macro.... me podrian apoyar gracias.
Héctor Miguel
2005-06-25 01:47:29 UTC
Permalink
hola, chicos !
Post by KL
Sub test()
[... ... ...]
On Error Resume Next
[... ... ...]
[pecata minuta]... si ya estas usando la instruccion 'On Error Resume Next'...
[creo que]... no tiene sentido 'pasar' el procedimiento por otros 'filtros' -?- [p.e.]
Sub EliminarArchivo()
On Error Resume Next
Kill "E:\Prueba.xls"
If Dir("E:\Prueba.xls") = "" Then MsgBox "Mision cumplida !!!" _
Else MsgBox "No se puede eliminar el archivo :("
End Sub

saludos,
hector.
KL
2005-06-25 10:44:34 UTC
Permalink
Hola HM,

... si ya estas usando la instruccion 'On Error Resume Next'...
Post by Héctor Miguel
[creo que]... no tiene sentido 'pasar' el procedimiento por otros
'filtros' -?-
Mi idea era controlar los errores en todo momento - en tu codigo el usuario
no sabra por que no ha podido eliminar el archivo e igual no sabra
corregirlo, digo yo ;-)

Saludos,
KL
Héctor Miguel
2005-06-25 18:50:30 UTC
Permalink
hola, KL !
Post by KL
Hola HM,
... si ya estas usando la instruccion 'On Error Resume Next'...
[creo que]... no tiene sentido 'pasar' el procedimiento por otros 'filtros' -?-
Post by KL
Mi idea era controlar los errores en todo momento
- en tu codigo el usuario no sabra por que no ha podido eliminar el archivo e igual no sabra corregirlo, digo yo ;-)
tienes razon [yo solo trataba de 'adelgazar' y 'aprovechar' la instruccion 'On Error Resume Next'] :))
si consideramos que las unicas fallas 'esperables' con la intencion de eliminar archivos por medio de dir() y kill son...
-> dir -> que el archivo no exista
-> kill -> que el archivo este abierto
[o el usuario/programador conoce/sabe lo que se puede esperar... y/o puedes informar al usuario +/- como sigue]...
Sub EliminarArchivo()
Dim Archivo As String: On Error Resume Next
Archivo = "D:\Carpeta inexistente\Archivo que no existe.abc"""
If Dir(Archivo) = "" Then MsgBox "El archivo no existe !!!": Exit Sub
Kill Archivo
If Dir(Archivo) <> "" Then MsgBox "No se puede eliminar un archivo abierto :("
End Sub

saludos,
hector.

Loading...