Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1368to1372
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

Kopie einer Datei erstellen

Kopie einer Datei erstellen
09.07.2014 10:06:38
Dirk
Hallo ins Forum,
habe ein kleines Problem. Ich habe eine .xlsm-Datei mit Paßwortschutz, die beim Schließen automatisch eine Kopie als .xlsx-Datei erstellt. Problem hierbei ist, daß natürlich auch der Code und das Paßwort mitkopiert wird und sich die Datei dann nicht mehr öffnen läßt. Gibt es eine Möglichkeit, den Code so zu ergänzen, daß beim
Kopiervorgang nur in der .xlsx-Datei der Code und das Paßwort automatisch entfernt werden (Paßwort für Lese-& Schreibschutz) ?
Vielen Dank im Voraus
Dirk
Hier noch mein Code :
Option Explicit

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim pfad As String
Dim pfad2 As String
pfad = "W:\Omni_KFZ\"
pfad2 = "W:\omni_kfz\sicherungen\"
With ThisWorkbook
.Save
Application.DisplayAlerts = False
.SaveCopyAs pfad & "Fahrzeuge_Neuwagen_Kopie.xlsm"
.SaveCopyAs pfad2 & "Fahrzeuge_Neuwagen_Kopie" & Format(Now, "YYYYMMDD hhmm") & ".xlsm"
Application.DisplayAlerts = True
End With
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Kopie einer Datei erstellen
09.07.2014 10:16:57
Dirk
Sorry, hier noch mal der richtige Code :
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim pfad As String
Dim pfad2 As String
pfad = "W:\Omni_KFZ\"
pfad2 = "W:\omni_kfz\sicherungen\"
With ThisWorkbook
.Save
Application.DisplayAlerts = False
.SaveCopyAs pfad & "Fahrzeuge_Neuwagen_Kopie.xlsx"
.SaveCopyAs pfad2 & "Fahrzeuge_Neuwagen_Kopie" & Format(Now, "YYYYMMDD hhmm") & ".xlsm"
Application.DisplayAlerts = True
End With
End Sub

AW: Kopie einer Datei erstellen
09.07.2014 10:18:56
Marc
Hallo,
ich habe gerade ein sehr ähnliches Problem!
Da mein VBA nicht das beste ist: Kann ich deinen Code auch so anpassen, dass lediglich ein einzelnes Blatt in eine neue Datei kopiert wird?
Viele Grüße

Anzeige
AW: Kopie einer Datei erstellen
09.07.2014 10:27:20
Dirk
Hallo Marc,
das Blatt heißt NWTabelle_aktuell !
Danke schon mal.
Dirk

AW: Kopie einer Datei erstellen
09.07.2014 10:54:36
Nepumuk
Hallo,
mit der SaveCopyAs-Methode erstellst du eine 1:1 - Kopie der Datei. Dabei ist es nicht möglich das Dateiformat von xlsm nach xlsx zu konvertieren. Du musst die ganz normalen SaveAs-Methode benutzen und da kannst du ja das Kennwort entfernen.
Wenn du das Dateiformat nicht änderst, kannst du mit:

ThisWorkbook.Password = vbNullString
das Kennwort entfernen.
Gruß
Nepumuk

AW: Kopie einer Datei erstellen
09.07.2014 15:31:56
Dirk
Hallo Nepomuk,
danke für Deinen Tip. Wenn ich den Eintrag von "SaveCopyAs" in "SaveAs" ändere erhalte ich beim Ausführen den Laufzeitfehler 1004 !
Gruß Dirk

Anzeige
AW: Kopie einer Datei erstellen
09.07.2014 15:48:19
Nepumuk
Hallo,
soll ich nun raten wie dein Code aussieht?
Ich hab das so vereinfacht getestet und es klappt einwandfrei:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call Save
Application.DisplayAlerts = False
Call SaveAs(Filename:="D:\Test1.xlsm")
Call SaveAs(Filename:="D:\Test2.xlsx", FileFormat:=xlOpenXMLWorkbook, Password:= _
vbNullString)
Application.DisplayAlerts = True
End Sub

Gruß
Nepumuk

AW: Kopie einer Datei erstellen
09.07.2014 16:27:24
Dirk
Hallo Nepomuk,
sorry, ich Rindvieh habe die Klammern vergessen.
Klappt jetzt prima. Tausend Dank !!!
Gruß Dirk
Anzeige

6 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige