florengray
Goto Top

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???

Content-Key: 71826

Url: https://administrator.de/contentid/71826

Ausgedruckt am: 28.03.2024 um 18:03 Uhr

Mitglied: bastla
bastla 24.10.2007 um 17:59:10 Uhr
Goto Top
Hallo florengray!

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
Mitglied: florengray
florengray 24.10.2007 um 18:07:04 Uhr
Goto Top
Mensch super!
Ich hatte schon so etwas ähnliches ausprobiert, aber wahrscheinlich doch mit den "" einen Fehler gemacht.
Klappt jetzt!
Vielleicht taucht später noch ne Frege auf, aber bis jetzt erstmal DANKESCHÖN!!!