Excel Variable (LW.DriveLetter) in Pfadangabe einbauen
Hallo,
Ich hoffe es gibt diesen Beitrag noch nicht?.
Also, ich möchte in einer Tabelle versch. Backupgrößen von Acronis True Image anzeigen lassen.
Meine Backups von den versch. Laufwerken sind immer im gleichen "Restpfad" untergebracht, nur ,dass sich der Ordner mit dem Volumenamen ändert.
Es soll also in einer Schleife nach und nach die Laufwerksinformationen ausgelesen werden, (funktioniert) und dann die Grösse von den Backupdateien. Dabei soll in dem Pfad LW.VolumeName ersetzt werden durch das Laufwerk, welches gerade in der Schleife ausgelesen wird.
Vielleicht einfache mit dem Code:
Option Explicit
Private Sub CommandButton1_Click()
'benötigt Verweis auf "Microsoft Scripting Runtime"
Dim fso As New FileSystemObject
Dim LW As Drive
Dim Spalte As Integer
Spalte = 2
Cells.Clear
Range("A1") = "Laufwerk"
Range("A2") = "Volume Name"
Range("A3") = "Größe"
Range("A4") = "Freier Speicher"
Range("A5") = "Belegter Speicher"
Range("A6") = "Vollst. Backup"
Range("A7") = "Diff. Backup"
Range("A8") = "max. Größe Diff.Backup"
Range("A9") = "Gültigkeit Diff.Backup"
On Error Resume Next
For Each LW In fso.Drives
Cells(1, Spalte) = LW.DriveLetter
Cells(2, Spalte) = LW.VolumeName
Cells(3, Spalte) = Format(LW.TotalSize / 1000000, "0.000")
Cells(4, Spalte) = Format(LW.FreeSpace / 1000000, "0.000")
Cells(5, Spalte) = Format(Cells(3, Spalte) - Cells(4, Spalte), "0.000")
??? Cells(6, Spalte) = Format(CreateObject("Scripting.FileSystemObject").GetFile("Z:\LW.VolumeName\Vollständiges Backup LW.DriveLetter.tib").Size / 1000000, "0.000") ???
Spalte = Spalte + 1
Next
Cells(2, 2) = "Diskette"
Cells(2, 6) = "DVD"
Cells(2, 7) = "CD"
Range("A:Z").HorizontalAlignment = xlCenter
Range("1:1,A:A").Select
Selection.Font.Bold = True
Range("A:Z").Columns.AutoFit
Range("A1").Select
End Sub
Wo die Fragezeichen stehen: Dort ist in dem Pfad LW.VolumeName eingebaut.
Ich >hoffte< dass Excel z.B. "Daten" dafür einsetzt, dann den Ordner mit dem Backup findet und dann die Grösse auslesen kann.
Aber es passiert gar nix.
Ein Pfad lautet z.B. Z:\Daten\Vollständiges Backup E.tib
Könnt ihr mir helfen???
Ich hoffe es gibt diesen Beitrag noch nicht?.
Also, ich möchte in einer Tabelle versch. Backupgrößen von Acronis True Image anzeigen lassen.
Meine Backups von den versch. Laufwerken sind immer im gleichen "Restpfad" untergebracht, nur ,dass sich der Ordner mit dem Volumenamen ändert.
Es soll also in einer Schleife nach und nach die Laufwerksinformationen ausgelesen werden, (funktioniert) und dann die Grösse von den Backupdateien. Dabei soll in dem Pfad LW.VolumeName ersetzt werden durch das Laufwerk, welches gerade in der Schleife ausgelesen wird.
Vielleicht einfache mit dem Code:
Option Explicit
Private Sub CommandButton1_Click()
'benötigt Verweis auf "Microsoft Scripting Runtime"
Dim fso As New FileSystemObject
Dim LW As Drive
Dim Spalte As Integer
Spalte = 2
Cells.Clear
Range("A1") = "Laufwerk"
Range("A2") = "Volume Name"
Range("A3") = "Größe"
Range("A4") = "Freier Speicher"
Range("A5") = "Belegter Speicher"
Range("A6") = "Vollst. Backup"
Range("A7") = "Diff. Backup"
Range("A8") = "max. Größe Diff.Backup"
Range("A9") = "Gültigkeit Diff.Backup"
On Error Resume Next
For Each LW In fso.Drives
Cells(1, Spalte) = LW.DriveLetter
Cells(2, Spalte) = LW.VolumeName
Cells(3, Spalte) = Format(LW.TotalSize / 1000000, "0.000")
Cells(4, Spalte) = Format(LW.FreeSpace / 1000000, "0.000")
Cells(5, Spalte) = Format(Cells(3, Spalte) - Cells(4, Spalte), "0.000")
??? Cells(6, Spalte) = Format(CreateObject("Scripting.FileSystemObject").GetFile("Z:\LW.VolumeName\Vollständiges Backup LW.DriveLetter.tib").Size / 1000000, "0.000") ???
Spalte = Spalte + 1
Next
Cells(2, 2) = "Diskette"
Cells(2, 6) = "DVD"
Cells(2, 7) = "CD"
Range("A:Z").HorizontalAlignment = xlCenter
Range("1:1,A:A").Select
Selection.Font.Bold = True
Range("A:Z").Columns.AutoFit
Range("A1").Select
End Sub
Wo die Fragezeichen stehen: Dort ist in dem Pfad LW.VolumeName eingebaut.
Ich >hoffte< dass Excel z.B. "Daten" dafür einsetzt, dann den Ordner mit dem Backup findet und dann die Grösse auslesen kann.
Aber es passiert gar nix.
Ein Pfad lautet z.B. Z:\Daten\Vollständiges Backup E.tib
Könnt ihr mir helfen???
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 71826
Url: https://administrator.de/contentid/71826
Ausgedruckt am: 25.11.2024 um 08:11 Uhr
2 Kommentare
Neuester Kommentar
Hallo florengray!
Das sollte mit folgender VBA-Zeile klappen (da Du ja mit "fso" bereits ein "FileSystemObject" hast, kannst Du gleich dieses verwenden):
Grüße
bastla
Das sollte mit folgender VBA-Zeile klappen (da Du ja mit "fso" bereits ein "FileSystemObject" hast, kannst Du gleich dieses verwenden):
Cells(6, Spalte) = Format(fso.GetFile("Z:\" & LW.VolumeName & "\Vollständiges Backup " & LW.DriveLetter & ".tib").Size / 1000000, "0.000")
Grüße
bastla