Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
800to804
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
800to804
800to804
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

JÜNGSTE ZIP-Datei automatisch entpacken

JÜNGSTE ZIP-Datei automatisch entpacken
08.09.2006 15:12:46
Daniel
Hallo nochmal und erst einmal herzlichen Dank an Bernd für die erste Hilfe!
Mittlerweile klappt das Entpacken per application.getopenfilename aber es hat sich herausgestellt, dass das unpraktikabel ist, da täglich mehrere Zip-Dateien einlaufen, wovon immer die aktuellste entpackt werden soll. In einer anderen Tabelle habe ich bereits diese Abfrage der jüngsten Datei erfolgreich implementiert doch hier vermag ich nicht den Dateinamen der aktuellsten Datei an die unzip-Routine zu übergeben, die ich nebenbei gesagt, gar nicht verstehe.
An welcher Stelle wird denn entpackt? Also welcher Befehl bewirkt das?
Also mein Code identifiziert die aktuellste Datei, was ich durch die MSGbox-Abfrage überprüfen kann.Das funktioniert. Nur die Übergabe zu oApp oder was auch immer das Entpacken einleitet, funktioniert leider nicht. Ich hoffe ich habe mein Ziel, die jeweils die jüngste Datei in denselben Ordner zu entpacken, gut beschrieben und ihr könnt mir helfen. Aber da mache ich mir weniger Sorgen. Dies Forum geht ab!
Danke Daniel
PS: hier mal mein zusammenkopierter Code. Nicht lachen. Bin absouter Anfänger:

Sub unzip2()
'   jüngste Datei feststellen und entpacken
Dim strVerzeichnis As String
Dim StrDatei As String
Dim I As Integer
Dim StrTyp As String
Dim Dateiname As String
Dim Dateiname_neu As String
Dim Zeit As Date
strVerzeichnis = "c:\pfad\"
StrTyp = "*.zip"
Dateiname = Dir(strVerzeichnis & StrTyp)
Dateiname_neu = Dateiname
Zeit = FileDateTime(strVerzeichnis & Dateiname)
Do While Dateiname <> ""
If Zeit < FileDateTime(strVerzeichnis & Dateiname) Then
Zeit = FileDateTime(strVerzeichnis & Dateiname)
Dateiname_neu = Dateiname
End If
Dateiname = Dir
Loop
MsgBox " Die jüngste Datei ist " & Dateiname_neu
'Jetzt geht das Entpacken los
Dim FSO As Object
Dim oApp As Object
Dim fname
Dim FileNameFolder
Dim DefPath As String
DefPath = "c:\Pfad\"    '<<< Change path
FileNameFolder = DefPath
fname = "Dateiname_neu"
Set oApp = CreateObject("Shell.Application")
'Copy the files in the newly created folder
oApp.NameSpace(FileNameFolder).CopyHere oApp.NameSpace(fname).Items
MsgBox "You find the files here: " & FileNameFolder
On Error Resume Next
Set FSO = CreateObject("scripting.filesystemobject")
FSO.deletefolder Environ("Temp") & "\Temporary Directory*", True
Set oApp = Nothing
Set FSO = Nothing
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: JÜNGSTE ZIP-Datei automatisch entpacken
11.09.2006 07:33:14
Coach
Hallo Daniel,
wenn Du den Entzip-Part der Sub wie folgt änderst funktioniert es:
FileNameFolder = strVerzeichnis
fname = Dateiname_neu
Set oApp = CreateObject("Shell.Application")
'Copy the files in the newly created folder
oApp.NameSpace(FileNameFolder).CopyHere oApp.NameSpace(FileNameFolder & fname).Items
MsgBox "You find the files here: " & FileNameFolder
On Error Resume Next
Set FSO = CreateObject("scripting.filesystemobject")
FSO.deletefolder Environ("Temp") & "\Temporary Directory*", True
Set oApp = Nothing
Set FSO = Nothing
Du kannst dann natürlich auch noch die redundanten Variablen (mehrere Verzeichnisse etc.) ersetzen und dann löschen.
Gruß Coach
Anzeige
AW: JÜNGSTE ZIP-Datei automatisch entpacken
11.09.2006 10:17:26
Daniel
Entschuldige die späte Antwort, war übers Wochenende weg. Super, es funktioniert hervorragend!!!! Da habe ich so lange dran rumgekrebst. Ich danke Dir vielmals!
Wenn Du noch besonders viel Zeit und Lust hast erklär doch mal bitte wo genau das Entpacken stattfindet. Excel greift also auf diesen Dialog zu, den man mit Rechtsklick - Extrahiern öffnen würde. Doch wie? Über shell application? und dann übergibt Excel den Zielordner an das Extrahierprogramm? Habe ich mir das richtig zusammengelegt? Aber Hauptsache ist, dass es funktioniert! Danke nochmal!!!

6 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige