Ich habe eine Reihe aufgezeichneter Dateien im „.Zip“-Format. Mein VBA öffnet sie alle und extrahiert die Details als Text. Da es viele sind, erstellt das Arbeitsbuch Blätter und hält die Anzahl wie folgt fest:
ActiveSheet.Paste
Dim sheetsQuantity As Integer
sheetsQuantity = ThisWorkbook.Worksheets.Count
ActiveSheet.Name = "Sheet" & sheetsQuantity - 3
Ich muss („Blatt“ und Menge) aktualisieren, damit es der Dateiname ist, der geöffnet wurde, um die Informationen abzurufen, und da es viele Dateien gibt, muss jedes Blatt mit der Datei übereinstimmen. Wenn also Datei Nr. 1 „MatchCase.zip“ heißt, muss Blatt Nr. 1 „MatchCase.zip“ heißen und so weiter.
Bitte um irgendwelche Ratschläge.
Antwort1
Dies kann von Ihrer Win-Version und Dateistruktur abhängen. Ich habe ZIP
auf meinem Desktop eine Datei mit dem Namen erstellt.Halter.Zip. In dem Ordner befindet sich eine einzelne Datei namensformate.xlsm
Ich öffne die Datei, wähle ein beliebiges Blatt in der Arbeitsmappe aus und untersuche Path
die Arbeitsmappe mit:
Sub WhoHoldsMe()
Dim sPath As String
sPath = ActiveSheet.Parent.Path
arr1 = Split(sPath, "\")
arr2 = Split(arr1(UBound(arr1)), "_")
MsgBox sPath & vbCrLf & arr2(1)
End Sub
Ich bekomme:
Offensichtlich hat das ActiveSheet ein Parent(die Arbeitsmappe, in der sich das Blatt befindet). Diese Arbeitsmappe hat einen Pfad, der den Namen der ZIP
Datei enthält.
Leider Path
enthält der Pfad nicht die Informationen, diehalter.zipbefindet sich auf meinem Desktop.