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

sicherungskopie

sicherungskopie
10.01.2004 01:15:15
Jonathan
Hallo ihr Excel Freunde!
- ist es echt eine "Jonathan-Invasion"? -
ich möchte, dass bei jedem speichern eine sicherungskopie einer datei angelgt wird.
Diese soll in einem bestimmten Verzeichnis sein und den Namen : "sicherungskopie "aktuelles Datum" "Dateiname"" erstellen. Das Verzeichnis soll immer das selbe sein, bis auf den letzten Ordner. Dieser soll immer nach dem user name benannt werden.
es sollen immer max. 5 sicherungskopeien in dem ordner sein, also immer alle älteren als die letzten 5 automatisch löschen........

ist das so möglich?

Liebe Grüße
Jonathan

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
noch OFFEN
10.01.2004 01:33:04
PeterW
Hallo Jonathan,
die "Invasion" ist nicht unbedingt das Problem. In den Forums-FAQ hast du bestimmt gelesen, was das Forum leisten kann und was nicht.
Zerlege deine Aufgabe in Teilaufgaben - ist auch ne gute Übung für die Problemlösung in VBA. Problem 1 wäre, EINE Kopie der Datei vor dem Speichern unter einem anderen Namen anzulegen im gleichen Verzeichnis anzulegen. (Denke jetzt noch nicht daran, wie man in einem anderen Verzeichnis speichert die Beschränkung auf fünf Sicherungen hinbekommt.) Dazu sollte es in den Excel-FAQ (siehe links) schon etwas geben. Wenn du dazu Fragen hast stell sie so lange, bis du die gewünschte Antwort hast.
Oder willst du eventuell Komplettlösungen - dazu wäre dann auch wieder ein Blick in die Forums-FAQ ratsam. :-)
Gruß
Peter
Anzeige
AW: noch OFFEN
10.01.2004 01:47:20
Jonathan
ich habe das makro schon geschrieben gehabt, habs vergessen noch dahin zu schrieben..... :-(
klappt auch super, nur halt immer unter dem selben namen. jetzt habe ich noch folgendes gefunden:

Private Sub Workbook_BeforeClose(blnCancel As Boolean)
Dim strPathName As String, strPathFullName As String
strPathName = ActiveWorkbook.Name ' ist der name des workbooks?!
strPathName = Left(strPathName, Len(strPathName) - 3) & "bak" ' wasn das?
strPathName = "c:\SicherheitsKopien\" & strPathName ' wasn das?
strPathFullName = ActiveWorkbook.FullName ' hä?
ActiveWorkbook.SaveAs strPathName  ' was ist str...?
ActiveWorkbook.SaveAs strPathFullName
End Sub


Die fragen dazu habe ich daneben geschrieben

Jonathan
Anzeige
AW: noch OFFEN
10.01.2004 02:36:51
PeterW
Hallo Jonathan,
strPathName = ActiveWorkbook.Name ' ist der name des workbooks?!
stimmt!
strPathName = Left(strPathName, Len(strPathName) - 3) & "bak" ' wasn das?
das steht alles in der VBA-Hilfe. Den Code hast du im VBA-Editor stehen, geh mit dem Cursor über den Begriff Left und drücke F1, mach das nochmal mit Len; jetzt weißt du, dass die rechten drei Buchstaben des Namens durch "bak" ersetzt wurden. Aus DateiTest.xls ist DateiTest.bak geworden.
strPathName = "c:\SicherheitsKopien\" & strPathName ' wasn das?
in der vorherigen Zeile hast du strPathName den Wert DateiTest.bak zugewiesen. Jetzt setzt du zwei Strings zusammen und es entsteht: c:\SicherheitsKopien\DateiTest.bak
ActiveWorkbook.SaveAs strPathName ' was ist str...?
strPathName ist eine Variable, die zu Anfang des Codes als String-Variable dimensioniert wurde.
strPathFullName = ActiveWorkbook.FullName ' hä?
Da hilft dann wieder die oben beschriebene Vorgehensweise mit F1.
Jonathan, hatte ich dir nicht schon das Beispiel mit dem Fahranfänger und dem Ralleyfahrer geschrieben? Fang doch mal mit einfachen Befehlsmakros an und taste dich dann langsam an Ereignismakros ran, mach weiter mit Steuerelementen und Userforms um irgendwann bei API-Funktionen zu landen (was ich selber noch nicht kann).
Für den Einstieg schau in die Excel-FAQ und dort speziell in die xlBasics.
Gruß
Peter
Anzeige
noch OFFEN
10.01.2004 02:20:01
Jonathan
ich habe jetzt folg. Code genommen:
' Application.EnableEvents = False Dieses haeb ich noch dazu gesetzt s. Bm1
Application.EnableEvents = True
Dim intAkt As Integer
Application.DisplayAlerts = False
Application.ScreenUpdating = False
intAkt = 1
While Dir("Pfad" & Trim(Str(intAkt)) & ".xls") <> ""
intAkt = intAkt + 1
Wend
ActiveWorkbook.SaveAs "Pfad" & Trim(Str(intAkt)) & ".xls"
Application.DisplayAlerts = True
' Application.EnableEvents = True

Bm1:
bei dieser speicherung wird auch das sub before_save ausgeführt, was aber nicht passieren soll!!!!! (ganz wichtig!!)
aber mit den beiden Befehlen funkt das nicht. jemand eine idee, wie ich die sub ausstellen kann?

Jonathan
Anzeige
AW: noch OFFEN
10.01.2004 02:25:49
jonathan
erl. die frage.... mschaue einfach auf die zweite zeile........
AW: sicherungskopie
10.01.2004 02:34:15
Jonathan
schon wieder ich!
wenn ich die datei nun darüber speicher, speichert er nicht eine kopie, sondern diese datei in dem angegebenen ordner, also heißt die dat dann auch so! wie kann ich es denn darauf ändern, dass wirklich nur eine kopie gespeichert wird?
noch OFFEN
10.01.2004 02:40:21
Sven
.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige