Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1476to1480
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
Inhaltsverzeichnis

Sicherheitskopie_Problem

Sicherheitskopie_Problem
24.02.2016 18:32:11
Fabi
Hallo liebes Forum
ich habe folgenden Code um eine Sicherheitskopie anzulegen
Option Private Module
Sub Sicherheitskopie()
Dim strFilename As String
Dim Speicherpfad1 As String
Dim Pfad As String, DateiName As String
Dim Quellpfad As Variant
Dim x As String
DateiName = ActiveWorkbook.Name
Pfad = Mid(Workbooks(DateiName).Path, 1) & "\"
Quellpfad = Pfad & "Sicherheitskopie\"
x = Month(Date)
If x 
mein Problem ist folgenden:
wenn ich das Makro das erstemal laufen lassen, dann funtkionier das auch, dass die Datei abgespeichert wir, aber wenn das Makro dann ein 2. mal laufen lassen möchte, dann kommt eine Fehlermeldung, dass die Datei nicht mehr vorhanden ist.
Ich habe mitbekommen, dass die Datei, die immer wieder ÜBERSCHRIEBEN werden soll, dann plötzlich nicht mehr da ist (beim 2.Lauf)
bei dieser Zeile
Call .SaveCopyAs(Speicherpfad1 & strFilename)
ist die Sicherheitskopie im 2. Lauf plötzlich weg, und es kommt zu einer Fehlermeldung, erst beim nochmaligen durhclaufen lassen funktioniert es wieder
was mache ich falsch?
dannk für eure Hilf
Fabi

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Sicherheitskopie_Problem
25.02.2016 06:07:43
Luschi
Hallo, Fabi
tausche mal ActiveWorkbook gegen ThisWorkbook aus. Außerdem habe ich noch 1 Prüfung
reingesetzt, ob die Sicherungskopie gerade auch geöffnet ist:

Sub Sicherheitskopie()
Dim wb As Workbook
Dim strFilename As String
Dim Speicherpfad1 As String
Dim Pfad As String, DateiName As String
Dim Quellpfad As Variant
Dim x As String
DateiName = ThisWorkbook.Name
Pfad = ThisWorkbook.Path & "\"
Quellpfad = Pfad & "Sicherheitskopie\"
x = Month(Date)
Select Case x
Case Is 
Gruß von Luschi
aus klein-Paris

AW: Sicherheitskopie_Problem
25.02.2016 17:25:21
Fabi
Hey Luschi
danke für deine Hilfe, leider funktioniert es immer noch nicht
1. Code durchlaufen - funktioniert
2. mal laufen lassen -- siehe Bild
Userbild
erst wenn ich im Debug bin und den Schritt (Call .SaveCopyAs(Speicherpfad1 & strFilename)) wiederhole, dann geht es
ich komme da einfach nicht dahinter warum das so ist
grüße Fabi

Anzeige
AW: Sicherheitskopie_Problem
25.02.2016 17:47:47
Luschi
Hallo Fabi,
diese Fehlermeldung erscheint bei mir, wenn es den Pfad nicht gibt.
Teste doch mal: MsgBox Dir(Speicherpfad1, vbDirectory), , ""
Wenn die Meldungsbox total leer bleibt, dann gibt es den Pfad, der in der Variablen 'Speicherpfad1'
hinterlegt ist, nicht.
Speicherpfad1

AW: Sicherheitskopie_Problem
25.02.2016 19:25:57
Fabi
Hey
ich habe es einmal ausprobiert,
in der Msgbox steht ein "." drin - wie soll ich das verstehen?
der Pfad existiert ja - ich sehe ihn ja vormir -
wie gesagt ich lasse es zum aller 1. mal laufen (der Ordner ist leer) - es funktioniert - die Datei wir in dem Ordner abgelegt (ich sehe sie und kann sie öffnen)
jetzt lasse ich es noch einmal laufen, so das die Datei nur überschrieben werden soll -- da kommt die Fehlermeldung - wenn ich in diesem Moment in den Ordner reinschaue, wo die Kopie drin ist, dann ist der Ordner leer
ich kann mir dies einfach nicht erklären warum
gibt es eine andere Möglichkeit die Datei abzuspeichern (eine Sicherheitskopie), wenn ich hier nicht weiter komme
danke
Fabi

Anzeige
AW: Sicherheitskopie_Problem
26.02.2016 04:40:04
Luschi
Hallo Fabi,
mal 2 Beispiele:
Dim Speicherpfad1 As String
Speicherpfad1 = "F:\Daten\test\abc\"
MsgBox Dir(Speicherpfad1, vbDirectory), , ""
Ergebnis: '.' und verweist darauf, das das Verzeichnis 'abc' existiert
Speicherpfad1 = "F:\Daten\test\abc"
MsgBox Dir(Speicherpfad1, vbDirectory), , ""
Ergebnis: 'abc' - Verzeichni9s 'abc' existiert
Der Unterschied ist nur, ob am Schluß noch das Zeichen '\' dranhängt oder nicht!
Der Vba-Befehl 'SaveCopyAs' löscht die eventuell vorhandene Datei im Verzeichnis, bevor er
eine Kopie davon anlegt. Was da bei Dir anschließend schief geht, muß ich heute Abend mal testen.
Probier es inzwischen mal so:

'Excel-Datei selbst löschen
Kill Speicherpfad1 & strFilename
Do While Dir(Speicherpfad1 & strFilename, vbNormal)  ""
'warten bis Betriebssstem Datei gelöscht hat
DoEvents
Loop
Call .SaveCopyAs(Speicherpfad1 & strFilename)
Gruß von Luschi
aus klein-Paris

Anzeige
AW: Sicherheitskopie_Problem
29.02.2016 11:41:25
Fabi
Hey Luschi
sorry dass ich jetzt erst antworte
danke dir - mit dem "kill" Befehl funktioiniert es
hast du rausbekommen, woran es liegt, oder eine anders Lösung gefunden?
grüße
Fabi

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige