Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Workbook in Urzustand

Forumthread: Workbook in Urzustand

Workbook in Urzustand
30.06.2006 11:26:42
Hans-Dieter
Hallo Experten,
ich habe ein etwas größeres Project mit zahlreichen Arbeitsblättern, von denen beim ersten Öffnen nur wenige zu sehen sind. Im Laufe der Arbeit werden bestehende Arbeitsblätter eingeblendet und neue werden erstellt.
Beim Schließen des Projektes möchte ich es wieder automatisch in den Urzustand versetzen, soll heißen: Eingeblendete Arbeitsblätter werden automatisch wieder ausgeblendet und neu erstellte Arbeiteblätter sollen automatisch (möglichst ohne RÜckfrage) wieder gelöscht werden.
Wie macht man so etwas mit einem Makro?
Danke Hans-Dieter Stubben
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Workbook in Urzustand
30.06.2006 11:33:58
Mustafa
Hallo Hans-Dieter,
mit folgendem Code wird beim schliessen der Datei jede Änderung an der Datei verworfen wenn nicht zwischendurch manuell gespeichert wurde.

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.Close savechanges:=False
End Sub

Rückmeldung obs Hilft wäre Nett.
Viele Grüße aus Köln.
Anzeige
AW: Workbook in Urzustand
30.06.2006 11:45:43
Hans-Dieter
Hallo Mustafa,
hilft in sofern nicht, weil ich nicht alle Änderungen verwerfen möchte, sondern nur die Blätter ausblenden bzw. schließen möchte.
Gruß
Dieter Stubben
AW: Workbook in Urzustand
30.06.2006 11:47:15
Mustafa
Hallo Hans-Dieter,
dann versuch es mit dem Code von Chris.
Danke für die Rückmeldung.
Viele Grüße aus Köln.
Anzeige
AW: Workbook in Urzustand
30.06.2006 11:42:28
ChrisL
Hallo Hans-Dieter
Erstelle eine Hilfstabelle. In Spalte A stehen die Blattnamen und in Spalte B WAHR/FALSCH (ein- oder ausblenden). Tabellen die nicht auf der Liste sind, werden gelöscht.

Sub t()
Dim sh As Object
Dim ws As Worksheet
On Error GoTo ErrorHandler
Set ws = Worksheets("Hilfstabelle")
For Each sh In Sheets
If WorksheetFunction.CountIf(ws.Columns(1), sh.Name) = 0 Then
Application.DisplayAlerts = False
sh.Delete
Application.DisplayAlerts = True
Else
If ws.Cells(Application.Match(sh.Name, ws.Columns(1), 0), 2) = True Then
sh.Visible = True
Else
sh.Visible = False
End If
End If
Next sh
Exit Sub
ErrorHandler:
Application.DisplayAlerts = True
MsgBox "Fehler blabla"
End Sub

Gruss
Chris
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige