Skrypt VBA do rozpakowania plików - to tylko tworzenie pustych folderów
Używam kodu Rona (http://www.rondebruin.nl/win/s7/win002.htm) teoretycznie rozpakować kilka plików zip w folderze. Uważam, że poniżej mam kod, który pobiera każdy plik zip w katalogu „Pobrane”, tworzy nowy folder z nazwą pliku zip bez „.zip”, a następnie wyodrębnia pliki do nowego folderu. Nie dostaję żadnych błędów (wiele razy ludzie dostają błąd wykonania 91), ale jedyne, co się dzieje, to to, że tworzy kilka poprawnie nazwanych folderów, ale wszystkie są puste.
Sub UnZipMe()
Dim str_FILENAME As String, str_DIRECTORY As String, str_DESTINATION As String
'Your directory where zip file is kept
str_DIRECTORY = "C:\Users\Jennifer\Downloads\"
'Loop through all zip files in a given directory
str_FILENAME = Dir(str_DIRECTORY & "*.zip")
Do While Len(str_FILENAME) > 0
Call Unzip1(str_DIRECTORY & str_FILENAME)
Debug.Print str_FILENAME
str_FILENAME = Dir
Loop
End Sub
Sub Unzip1(str_FILENAME As String)
Dim oApp As Object
Dim Fname As Variant
Dim FnameTrunc As Variant
Dim FnameLength As Long
Fname = str_FILENAME
FnameLength = Len(Fname)
FnameTrunc = Left(Fname, FnameLength - 4) & "\"
If Fname = False Then
'Do nothing
Else
'Make the new folder in root folder
MkDir FnameTrunc
'Extract the files into the newly created folder
Set oApp = CreateObject("Shell.Application")
oApp.Namespace(FnameTrunc).CopyHere oApp.Namespace(Fname).items
End If
End Sub