Thema: Arbeitsmappe speichern beim Schließen


Seite durchsuchen:
Home


zurück zur Übersicht

Diskussionsgruppe: Tabellenkalkulation

Hallo an @lle,

Frage:
******
Gibt es eine Möglichkeit meine Arbeitsmappe zu schließen und dabei automatisch im Hintergrund zu speichern, ohne das diese Meldung (Sollen Ihre Änderungen.... gespeichert werden?) kommt.

lg Robert

Danke schon im Vorhinein für die Antwort :-)

Von: robertu Datum: 18.04.2007, 14:37

alle Antworten zu dieser Frage




Antwort 1 von Pistenschreck vom 18.04.2007, 14:45
Hallo Robert

Dieser Code gehört in Diese Arbeitsmappe

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.Close SaveChanges:=True
End Sub

Gruss Werner

Antwort 2 von M.O. vom 18.04.2007, 14:47
Hallo,

wechsle in die VBA-Umgebung (Alt-F11) und füge bei DieseArbeitsmappe den folgenden Code ein:

Private Sub Workbook_BeforeClose(Cancel As Boolean)

If ThisWorkbook.Saved = False Then
ThisWorkbook.Save
End If

End Sub


Die Arbeitsmappe wird beim Schießen automatisch und ohne Nachfrage gespeichert.

Gruß

M.O.

Antwort 3 von robertu vom 22.04.2007, 11:21
Danke :-) funktioniert prima!

Doch gibt es auch eine Möglichkeit von der Arbeitsmappe nur das Tabellenblatt "Tabelle2" zu speichern. Und alle Eingaben bzw Veränderungen in den anderen Tabellenblättern zu verwerfen?

Lg Robert

Antwort 4 von robertu vom 24.04.2007, 17:24
Hallo an @lle,

wahrscheinlich ist das speichern eines einzelnen Tabellenblatt in Excel nicht möglich.
Es wäre mir schon sehr geholfen, wenn es eine Möglichkeit gäbe bevor ich folgendes Makro ausführe:

---------- Code -----------
Private Sub Workbook_BeforeClose(Cancel As Boolean)

If ThisWorkbook.Saved = False Then
ThisWorkbook.Save
End If

End Sub
---------- Code -----------

auf ein bestimmtes Tabellenblatt springe! und erst danach dieses Makro ausgeführt wird. Das Tabellenblatt heißt "Messkreis-Prüfblatt"

Grund für dieses Vorhaben: Da es sich um eine Vorlage handelt, die einen automatischen Speicherbutton besitzt welcher beim betätigen eine Kopie (ohne Makros) dieser Vorlage mit einem bestimmten Namen in ein bestimmten Ort speichert (und nur ein Tabellenblatt), habe ich nun das Problem das die Vorlage nach Beendigung der Eingabe wieder in den Grundzustand gehen soll. Momentan führe ich einfach ein paar Makros beim Start aus um mir die Vorlage wieder zu säubern.

Warum ich dann dieses Speicher beim schließen ausführe?
Ganz einfach: in dieser Vorlage befinden sich mehrere Listen, welche bei der Eingabe eines Protokolles automatisch ergänz werden und somit als kleine Datenbank fungieren weiteres habe ich auch noch DropDown Menus welche auf eine Tabelle in der Arbeitsmappe zugreifen.

Warum ich derzeit ein Problem damit habe:
Wenn ich zufällig auf einem anderen Tabellenblatt bin und auf schließen gehe, speichert er mir die Arbeitsmappe automatisch. (alles noch wie gewollt) aber beim Starten führt er mir meine Säuberungsmakros aus welche am aktive Arbeitsblatt ausgeführt werden.



der VB-Code liegt bei mir unter "DieserArbeitsmappe" und wird beim schließen dieser Arbeitsmappe automatisch ausgeführt. Danke nochmal an M.O.

Mir fällt gerade ein, dass es eine weitere Lösung gäbe.

Welches Makro benötige ich, um beim Starten meiner Excel Datei automatisch auf ein bestimmtes Tabellenblatt zu springen?

DANKE an @lle
Lg Robert

Antwort 5 von M.O. vom 25.04.2007, 07:57
Hallo Robertu

für ein bestimmtes Tabellenblatt bei Start gib den folgenden Code bei
"Diese Arbeitsmappe" ein:

Private Sub Workbook_Open()
Worksheets("Arbeitsblattname").Activate
End Sub


Statt Arbeitsblattname musst du natürlich den Namen des entsprechenden Arbeitsblattes angeben.

Gruß

M.O.

Antworten der Gruppe: Tabellenkalkulation
www.supportnet.de







Office 365 stellt vertraute Microsoft Office-Tools für die Zusammenarbeit und Produktivität über die Cloud bereit. So können alle ganz einfach von nahezu überall zusammenarbeiten und auf E-Mails, Webkonferenzen, Dokumente und Kalender zugreifen.