Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
352to356
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
352to356
352to356
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

beim schließen automatisch kopie anfertigen

beim schließen automatisch kopie anfertigen
21.12.2003 22:16:04
devilsblood
Hi Leute
Hab ein Problem für euch zu lösen! Suche eine Möglichkeit bzw ein Makro, das excel dazu veranlasst, beim schließen der Tabelle automatisch eine kopie dieser anzufertigen. In dieser Kopie sollten sowohl die werte als auch die kommentare, aber keine Makros enthalten sein. Bestenfalls sollte diese Kopie dann auch noch den namen haben, der in der Tabelle an der Stelle "B2" steht.

Im Voraus schon einmal Danke für eure Bemühungen

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: beim schließen automatisch kopie anfertigen
21.12.2003 22:38:32
Franz W.
Hallo ??? (bitte Realnamen angeben)


Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.Save
ActiveWorkbook.SaveAs Worksheets("Tabelle1").[b2] & ".xls"
ActiveWorkbook.Close
End Sub


Grüße
Franz
Einspruch (noch OFFEN)
21.12.2003 22:41:58
PeterW
Hallo Franz,

und diese Zeilen speichert eine Kopie der Datei ohne die enthaltenen Makros? :-)

Gruß
Peter
Böses Faul, sorry!! (NOCH OFFEN)
21.12.2003 23:08:44
Franz W.
Hallo Peter,

hast recht, da hab ich zu schludrig drüber gelesen, danke für den Tritt

Grüße
Franz
AW: beim schließen automatisch kopie anfertigen
21.12.2003 23:03:33
Hans-Peter (devilsblood)
Hi Franz...
Danke für die schnelle Hilfe. Im Prinzip schon richtig, allerdings enthält die Kopie jetzt dummerweise das selbe Makro wie in der Ursprungsdatei. Es entsteht also eine Schleife, wenn ich die Kopie öffne und wieder schließe, weil dann die kopie sich selbst überschreiben möchte. Gibt es eine Möglichkeit, dass die kopie kein Makro enthält?

Grüße
Hans-Peter
Anzeige
AW: beim schließen automatisch kopie anfertigen
21.12.2003 23:11:24
Nepumuk
Hallo Hans-Peter,
das geht so:

Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Worksheets(1).Copy
With ActiveWorkbook.VBProject.VBComponents(ActiveWorkbook.Worksheets(1).Name).CodeModule
.DeleteLines 1, .CountOfLines
End With
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\" & ThisWorkbook.Worksheets(1).Cells(2, 2) & ".xls"
ActiveWorkbook.Close
End Sub



Code eingefügt mit: Excel Code Jeanie

Beim öffnen der Kopie kommt aber noch die Makroabfrage, auch wenn keine mehr drin sind. Da hat Excel ein langes Gedächtnis. Ein nochmaliges speichern der Mappe schafft hier abhilfe.
Gruß
Nepumuk
Anzeige
AW: beim schließen automatisch kopie anfertigen
22.12.2003 00:17:45
Hans-Peter
Hallo Nepumuk...
Vielen Dank für die klasse Hilfe! Funktioniert einwandfrei =) Hab noch ein kleines Problem, was ich ohne Eure Hilfe glaub ich nicht lösen kann. Meine Originaldatei hat einen Passwort-geschützten Blattschutz. Dieser schützt einen Teil der Zellen, die Formeln enthalten. Die Kopie soll einen kompletten Blattschutz erhalten, der aber ein anderes Passwort als die Originaldatei erhalten soll. Hintergrund: die Kopie soll eine Sendedatei sein, die alle daten des Originals enthalten soll; die kopie soll beim schließen des Originals automatisch erstellt werden, komplett passwortgeschützt sein ( was man ja im makro festlegen kann oder?!) und wenn möglich keine makros enthalten. Gibt´s da ne Möglichkeit?

Liebe Grüße
Hans-Peter
Anzeige
AW: beim schließen automatisch kopie anfertigen
22.12.2003 19:33:10
Nepumuk
Hallo Hans-Peter,
dann so:

Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Worksheets(1).Copy
With ActiveSheet
.Unprotect Password:="altesKennwort"
.Cells.Locked = True
.Protect Password:="neuesKennwotr"
End With
With ActiveWorkbook.VBProject.VBComponents(ActiveWorkbook.Worksheets(1).Name).CodeModule
.DeleteLines 1, .CountOfLines
End With
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\" & ThisWorkbook.Worksheets(1).Cells(2, 2) & ".xls"
ActiveWorkbook.Close
End Sub



Code eingefügt mit: Excel Code Jeanie

Gruß
Nepumuk
Anzeige
AW: beim schließen automatisch kopie anfertigen
21.12.2003 23:53:31
K.Rola
Hallo,

Option Explicit

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim vbc As Object, wks As Worksheet, strName As String
strName = Sheets("Tabelle1").[a1].Text & ".xls"
ActiveWorkbook.Save
ActiveWorkbook.SaveAs strName
With ActiveWorkbook.VBProject
For Each vbc In .VBComponents
Select Case vbc.Type
Case 1, 2, 3
.VBComponents.Remove vbc
Case 100
vbc.CodeModule.DeleteLines 1, vbc.CodeModule.CountOfLines
End Select
Next
End With
ActiveWorkbook.Save
End Sub


Gruß K.Rola
AW: beim schließen automatisch kopie anfertigen
22.12.2003 00:19:53
Hans-Peter
Hallo K.Rola
Vielen Dank für die klasse Hilfe! Funktioniert einwandfrei =) Hab noch ein kleines Problem, was ich ohne Eure Hilfe glaub ich nicht lösen kann. Meine Originaldatei hat einen Passwort-geschützten Blattschutz. Dieser schützt einen Teil der Zellen, die Formeln enthalten. Die Kopie soll einen kompletten Blattschutz erhalten, der aber ein anderes Passwort als die Originaldatei erhalten soll. Hintergrund: die Kopie soll eine Sendedatei sein, die alle daten des Originals enthalten soll; die kopie soll beim schließen des Originals automatisch erstellt werden, komplett passwortgeschützt sein ( was man ja im makro festlegen kann oder?!) und wenn möglich keine makros enthalten. Gibt´s da ne Möglichkeit?

Liebe Grüße
Hans-Peter
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige