descompactar en otros directorios

07/12/2004 - 20:50 por osalazarg | Informe spam
Espero que alguien me pueda ayudar por favor.

Como pedo modificar la siguiente macro que este foro me ayudaron a
hacerla, ahora no puedo modificarla para que me tome del mismo directorio
el archivo y lo descompacte en otros directorios


Sub Descomprimir_FW_Solucion()
Dim Del_Directorio, Al_Directorio, Archivo As String, X As Integer,
Descomprime As String, EsteArchivo As String, Comando As String
Del_Directorio = Array("C:\SIEF01L\", "C:\SIEF01L\", "C:\SIEF01L\")
Al_Directorio = Array("c:\sief01l", "c:\sief02vl", "c:\siefbas1")
Archivo = "FW" & Format(Date, "ddmmyy") & ".zip -d "
Descomprime = ActiveWorkbook.Path & "\unzip.exe -o "
For X = 0 To UBound(Del_Directorio)
EsteArchivo = Del_Directorio(X) & Archivo
Comando = Descomprime & EsteArchivo & Al_Directorio(X)
Shell Environ("comspec") & " /c " & Comando
Next
End Sub

Por su ayuda por anticipado muchas gracias.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
07/12/2004 - 23:40 | Informe spam
hola, sago !

... modificar la siguiente macro
... para que me tome del mismo directorio el archivo y lo descompacte en otros directorios
Sub Descomprimir_FW_Solucion()
Dim Del_Directorio, Al_Directorio, Archivo As String, X As Integer,
Descomprime As String, EsteArchivo As String, Comando As String
Del_Directorio = Array("C:\SIEF01L\", "C:\SIEF01L\", "C:\SIEF01L\")
Al_Directorio = Array("c:\sief01l", "c:\sief02vl", "c:\siefbas1")
Archivo = "FW" & Format(Date, "ddmmyy") & ".zip -d "
Descomprime = ActiveWorkbook.Path & "\unzip.exe -o "
For X = 0 To UBound(Del_Directorio)
EsteArchivo = Del_Directorio(X) & Archivo
Comando = Descomprime & EsteArchivo & Al_Directorio(X)
Shell Environ("comspec") & " /c " & Comando
Next
End Sub



1° 'deja' la declaracion de la variable 'Del_Directorio' como cadena de texto [en lugar de 'variant' -por omision-]
Dim Del_Directorio As String, Al_Directorio, ... [... etc. ...]
2° 'dejalo' asignado a una cadena de texto CON el directorio 'unico' [en lugar de asignarlo a una matriz]
Del_Directorio = "C:\Ruta y\Carpetas\Adicionales\"
3° 'llena' la matriz 'Al_Directorio' CON los 'otros' directorios
4° modifica el ciclo 'For X... Next' para que 'cicle' en 'Al_Directorio' [en lugar de 'Del_Directorio']
For X = 0 To UBound(Al_Directorio)
=> 'el resto del codigo'... puede seguir igual...

¿comentas?
saludos,
hector.
Respuesta Responder a este mensaje
#2 osalazarg
08/12/2004 - 22:58 | Informe spam
Hector hice los cambios que me dijiste y no me quedo, lo que tengo que
dhacer es lo siguiente, me envian un archivo compactado que se llama
FWDDMMAA.ZIP que lo grabo en C:\SIEF01L y necesito descompactarlo en las
siguientes carpetas c:\sief01l, c:\sief02vl, c:\siefbas1, despues de las
modificaciones quedo asi, pero no me hace nada, me podrias ayudar a
corregirlo por favor.

Sub Descomprimir_FW_Solucion()
Dim Del_Directorio As String, Al_Directorio, Archivo As String, X As
Integer, Descomprime As String, EsteArchivo As String, Comando As String
Del_Directorio = "C:\SIEF01L\"
Al_Directorio = Array("c:\sief01l", "c:\sief02vl", "c:\siefbas1")
Archivo = "FW" & Format(Date, "ddmmyy") & ".zip -d "
Descomprime = ActiveWorkbook.Path & "\unzip.exe -o "
For X = 0 To UBound(Al_Directorio)
EsteArchivo = Al_Directorio(X) & Archivo
Comando = Descomprime & EsteArchivo & Al_Directorio(X)
Shell Environ("comspec") & " /c " & Comando
Next
End Sub



Gracias.

Héctor Miguel wrote:

hola, sago !

> ... modificar la siguiente macro
> ... para que me tome del mismo directorio el archivo y lo descompacte en


otros directorios
> Sub Descomprimir_FW_Solucion()
> Dim Del_Directorio, Al_Directorio, Archivo As String, X As Integer,
> Descomprime As String, EsteArchivo As String, Comando As String
> Del_Directorio = Array("C:SIEF01L", "C:SIEF01L", "C:SIEF01L")
> Al_Directorio = Array("c:sief01l", "c:sief02vl", "c:siefbas1")
> Archivo = "FW" & Format(Date, "ddmmyy") & ".zip -d "
> Descomprime = ActiveWorkbook.Path & "unzip.exe -o "
> For X = 0 To UBound(Del_Directorio)
> EsteArchivo = Del_Directorio(X) & Archivo
> Comando = Descomprime & EsteArchivo & Al_Directorio(X)
> Shell Environ("comspec") & " /c " & Comando
> Next
> End Sub

1° 'deja' la declaracion de la variable 'Del_Directorio' como cadena de


texto [en lugar de 'variant' -por omision-]
Dim Del_Directorio As String, Al_Directorio, ... [... etc. ...]
2° 'dejalo' asignado a una cadena de texto CON el directorio 'unico' [en


lugar de asignarlo a una matriz]
Del_Directorio = "C:Ruta yCarpetasAdicionales"
3° 'llena' la matriz 'Al_Directorio' CON los 'otros' directorios
4° modifica el ciclo 'For X... Next' para que 'cicle' en 'Al_Directorio'


[en lugar de 'Del_Directorio']
For X = 0 To UBound(Al_Directorio)
=> 'el resto del codigo'... puede seguir igual...

¿comentas?
saludos,
hector.
Respuesta Responder a este mensaje
#3 KL
08/12/2004 - 23:32 | Informe spam
Sago,

Lo primero q me llama la atencion son dos cosas:

1) q estas usando Al_Directorio en vez de Del_Directorio en la siguienet
linea:

EsteArchivo = Al_Directorio(X) & Archivo
...por lo q queda sin usar la variable Del_Directorio

2) sin embargo, si necesitas usar la variable Al_Directorio en vez de
Del_Directorio, entonces deberias revisar las siguientes lineas:
Al_Directorio = Array("c:\sief01l", "c:\sief02vl", "c:\siefbas1")
EsteArchivo = Al_Directorio(X) & Archivo

si, digamos, Al_Directorio(X)="c:\sief01l" y Archivo="FW081204.zip -d ",
entonces:
EsteArchivo="c:\sief01lFW081204.zip -d ", o sea q falta la barra, por lo
cual habria q corregir UNA de las tres lineas q te pongo abajo de la
siguiente manera:

Archivo = "\FW" & Format(Date, "ddmmyy") & ".zip -d "

o bien

EsteArchivo = Al_Directorio(X) & "\" & Archivo

o bien

Al_Directorio = Array("c:\sief01l\", "c:\sief02vl\", "c:\siefbas1\")

Saludos,
KL



"sago" wrote in message
news:%
Hector hice los cambios que me dijiste y no me quedo, lo que tengo que
dhacer es lo siguiente, me envian un archivo compactado que se llama
FWDDMMAA.ZIP que lo grabo en C:\SIEF01L y necesito descompactarlo en las
siguientes carpetas c:\sief01l, c:\sief02vl, c:\siefbas1, despues de las
modificaciones quedo asi, pero no me hace nada, me podrias ayudar a
corregirlo por favor.

Sub Descomprimir_FW_Solucion()
Dim Del_Directorio As String, Al_Directorio, Archivo As String, X As
Integer, Descomprime As String, EsteArchivo As String, Comando As String
Del_Directorio = "C:\SIEF01L\"
Al_Directorio = Array("c:\sief01l", "c:\sief02vl", "c:\siefbas1")
Archivo = "FW" & Format(Date, "ddmmyy") & ".zip -d "
Descomprime = ActiveWorkbook.Path & "\unzip.exe -o "
For X = 0 To UBound(Al_Directorio)
EsteArchivo = Al_Directorio(X) & Archivo
Comando = Descomprime & EsteArchivo & Al_Directorio(X)
Shell Environ("comspec") & " /c " & Comando
Next
End Sub



Gracias.

Héctor Miguel wrote:

hola, sago !



> ... modificar la siguiente macro
> ... para que me tome del mismo directorio el archivo y lo descompacte
> en


otros directorios
> Sub Descomprimir_FW_Solucion()
> Dim Del_Directorio, Al_Directorio, Archivo As String, X As Integer,
> Descomprime As String, EsteArchivo As String, Comando As String
> Del_Directorio = Array("C:SIEF01L", "C:SIEF01L", "C:SIEF01L")
> Al_Directorio = Array("c:sief01l", "c:sief02vl", "c:siefbas1")
> Archivo = "FW" & Format(Date, "ddmmyy") & ".zip -d "
> Descomprime = ActiveWorkbook.Path & "unzip.exe -o "
> For X = 0 To UBound(Del_Directorio)
> EsteArchivo = Del_Directorio(X) & Archivo
> Comando = Descomprime & EsteArchivo & Al_Directorio(X)
> Shell Environ("comspec") & " /c " & Comando
> Next
> End Sub



1° 'deja' la declaracion de la variable 'Del_Directorio' como cadena de


texto [en lugar de 'variant' -por omision-]
Dim Del_Directorio As String, Al_Directorio, ... [... etc. ...]
2° 'dejalo' asignado a una cadena de texto CON el directorio 'unico' [en


lugar de asignarlo a una matriz]
Del_Directorio = "C:Ruta yCarpetasAdicionales"
3° 'llena' la matriz 'Al_Directorio' CON los 'otros' directorios
4° modifica el ciclo 'For X... Next' para que 'cicle' en
'Al_Directorio'


[en lugar de 'Del_Directorio']
For X = 0 To UBound(Al_Directorio)
=> 'el resto del codigo'... puede seguir igual...



¿comentas?
saludos,
hector.




Respuesta Responder a este mensaje
#4 Héctor Miguel
09/12/2004 - 05:09 | Informe spam
hola, sago !

... hice los cambios ... y no me quedo [...]
... me envian un archivo compactado que se llama FWDDMMAA.ZIP que lo grabo en C:\SIEF01L
... necesito descompactarlo en las siguientes carpetas c:\sief01l, c:\sief02vl, c:\siefbas1 [...]
Sub Descomprimir_FW_Solucion()
Dim Del_Directorio As String, Al_Directorio, Archivo As String, X As
Integer, Descomprime As String, EsteArchivo As String, Comando As String
Del_Directorio = "C:\SIEF01L\"
Al_Directorio = Array("c:\sief01l", "c:\sief02vl", "c:\siefbas1")
Archivo = "FW" & Format(Date, "ddmmyy") & ".zip -d "
Descomprime = ActiveWorkbook.Path & "\unzip.exe -o "
For X = 0 To UBound(Al_Directorio)
EsteArchivo = Al_Directorio(X) & Archivo
Comando = Descomprime & EsteArchivo & Al_Directorio(X)
Shell Environ("comspec") & " /c " & Comando
Next
End Sub



=> solo cambia la linea donde se 'complementa' la variable 'Archivo'...
de: ->EsteArchivo = Al_Directorio(X) & Archivo<
a: ->EsteArchivo = Del_Directorio & Archivo<-

saludos,
hector.

p.d. perdon... 'se me chispotio' [en el punto 4°] al 'barrer' el codigo de tu consulta original :(
Respuesta Responder a este mensaje
#5 osalazarg
09/12/2004 - 17:44 | Informe spam
Muchas gracias a los dos y Saludos desde Mexico D.F.

Héctor Miguel
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida