Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
384to388
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
384to388
384to388
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Speicherplatz überprüfen / Alex K ?

Speicherplatz überprüfen / Alex K ?
19.02.2004 11:25:27
Jacob
Hallo Leute
wie kriege ich es hin in der Routine Kopieren die größe, der zu kopierenden Dateien zu ermitteln und sie mit der Routine Speicherplatz zu vergleichen ?. In der Kopieren-Routine, Datei : Verzeichnisbaum.xls, Tabelle: Standard_Tab sind alle zu kopierenden Dateien eingetragen. Für Antworten wäre ich sehr dankbar.
Jacob
----------------------------------------------------------------------

Sub Speicherplatz()
Dim drvPath
Dim fs, d, s
Set fs = CreateObject("Scripting.FileSystemObject")
Set d = fs.GetDrive(fs.GetDriveName(Pfad))
s = "Laufwerk " & UCase(Pfad) & " hat noch " & FormatNumber(d.FreeSpace / 1048576, 0) & " Megabytes frei"
MsgBox s, vbOKOnly + vbInformation, "Speicherplatz"
End Sub

----------------------------------------------------------------------

Sub Kopieren()
Dim Ziel   As String
Dim Quelle As String
Dim Mldg, Stil
On Error Resume Next
Zeile = "A"
Suchzelle = 1
Pfad = ActiveWorkbook.path
Datei = Pfad & "\Verzeichnisbaum.xls"
Quelle_Temp = Range("F18") & ":"
Ziel_Temp = ActiveWorkbook.path & "\O"
Workbooks.Open Datei
Sheets("Standard_Tab").Select
Do While Zeile <> ""
Err.Clear
Zeile = Range("A" & Suchzelle)
If Zeile = "" Then
Exit Do
Else
Quelle = Quelle_Temp & Zeile
Ziel = Ziel_Temp & Zeile
FileCopy Quelle, Ziel
Select Case Err.Number
Case Is = 52
MsgBox " Datei:  " & Quelle & "  ist nicht vorhanden !"
Case Is = 53
MsgBox " Datei:  " & Quelle & "  ist nicht vorhanden !"
End Select
Suchzelle = Suchzelle + 1
End If
Loop
ActiveWorkbook.Close savechanges = False
End Sub

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Speicherplatz überprüfen / Alex K ?
19.02.2004 14:21:57
Alex K.
Hallo Jakob,
habe mal eine Lösung auf Grund deiner Vorgabe kreiert. Ich hoffe, sie passt:

Public Sub Kopieren()
Dim zielPfad        As String
Dim Quelle          As String
Dim rng             As Range
Dim datei           As String
Dim datGr           As Long
Dim fileObj         As Object
Dim driveObj        As Object
zielPfad = ActiveWorkbook.Path
Set fileObj = CreateObject("Scripting.FileSystemObject")
Set driveObj = fileObj.GetDrive(fileObj.GetDriveName(Left(zielPfad, 2)))
zielPfad = ActiveWorkbook.Path
datei = zielPfad & "\Verzeichnisbaum.xls"
Workbooks.Open datei
With Sheets("Standard_Tab")
Quelle = .Range("F18") & ":"
zielPfad = ActiveWorkbook.Path & "\O"
For Each rng In .Range("A1:A" & .Cells(.Rows.Count, 1).End(xlUp).Row)
datei = Quelle & rng.Value
datGr = FileLen(datei)
If datGr > driveObj.freespace Then
'Alternativ zur MsgBox wäre es vielleicht besser, dass Ergebnis in die Standard_Tab
'zu schreiben. Die Meldung wird in der Dateizeile in Spalte G geschrieben.
'Bei vielen Meldungen ist es für den User sehr mühsam, alle zu bestätigen
'rng.Offset(0, 6).Value = "Für diese Datei ist nicht genügend Speicherplatz vorhanden. Keine Kopie erstellt."
MsgBox "Für Datei '" & datei & "' ist nicht genügend Speicherplatz vorhanden. " & _
vbNewLine & "Sie wird deshalb nicht kopiert.", vbExclamation, "Dateien kopieren"
Else
FileCopy datei, zielPfad & rng.Value
If Err.Number <> 0 Then
Err.Clear
'rng.Offset(0, 6).Value = "Fehler beim Kopieren dieser Datei nach " & zielPfad
MsgBox "Fehler beim Kopieren der Datei '" & datei & _
"' nach '" & zielPfad & rng.Value, vbExclamation, "Dateien kopieren"
End If
End If
Next rng
End With
'Diese Anweisung muss natürlich gelöscht werden, wenn die Fehlermeldungen
'in die Tabelle Starndard_Tab geschrieben werden. Ansonsten hat der User keine
'Chance, die Meldungen zu lesen :-)
ActiveWorkbook.Close False
End Sub

Anzeige
AW: Speicherplatz überprüfen / Alex K ?
19.02.2004 14:40:31
Jacob
Hallo Alex
was soll ich sagen, es ist einfach nicht zu glauben dass du immer wieder Lust findest sich mit dem Problemen von Anderen (Laien ?) zu beschäftigen. Ich danke dir sehr und ich habe schon durch deine Hilfe jede Menge dazu gelernt.
Viele Grüße
Jacob
Danke für die Rückmeldung
19.02.2004 14:47:43
Alex K.
Hallo Jakob,
ich bin im Moment "ans Haus gefeselt" und bevor ich mich langweile, denke ich lieber. Ich sehe solchen Aufgaben als Gehirn-Jogging :-)
Ausserdem bleibe ich damit fit für meinen Job :-)

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige