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

Forumthread: Makro Tabellenblatt löschen Abfrage bestätigen

Makro Tabellenblatt löschen Abfrage bestätigen
09.06.2005 12:08:01
Gunter
Hallo Zusammen,
ich habe ein Makro erstellt, das am Ende ein Tabellenblatt löschen soll.
Am Ende des Makros ist folgender Code:
Application.CutCopyMode = False
ActiveWindow.SelectedSheets.Delete
Nun muß ich jedoch immer noch die Abfrage bestätigen, ob ich das Tabellenblatt wirklich löschen möchte. Gibt es ein Mittel, diese Abfrage zu unterdrücken, damit das Tabellenblatt sofort gelöscht wird?
Danke im voraus.
Gunter
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Makro Tabellenblatt löschen Abfrage bestätigen
09.06.2005 12:11:11
Hajo_Zi
Hallo Günter,
Option Explicit

Sub tes()
Application.DisplayAlerts = False
ActiveWindow.SelectedSheets.Delete
Application.DisplayAlerts = True
End Sub

Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem Windows 2000 SP4 und Excel Version 2000 SP3.


Anzeige
AW: Makro Tabellenblatt löschen Abfrage bestätigen
09.06.2005 12:13:32
Stefan
Hallo Gunter,
Hier der Auszug aus der Excel Hilfe:
"Dieses Beispiel löscht Sheet3 der aktiven Arbeitsmappe, ohne ein Dialogfeld zur Bestätigung anzuzeigen.
Application.DisplayAlerts = False
Worksheets("Sheet3").Delete
Application.DisplayAlerts = True"
Das sollte wohl funktionieren.
Schoene Gruesse
Stefan
Anzeige
AW: Makro Tabellenblatt löschen Abfrage bestätigen
09.06.2005 12:23:22
Gunter
Danke Stefan und Hajo,
der Code passt. :-))
An dich Stefan habe ich noch folgende Frage. Du schreibst "hier ein Auszug aus der Excel Hilfe". Welche Excel Hilfe ist das? Wie rufe ich diese auf?
Bitte um Info.
Gruß Gunter
AW: Makro Tabellenblatt löschen Abfrage bestätigen
10.06.2005 04:00:42
Stefan
Hallo Gunter,
Wenn Du in VBA in das Wort "delete" in Deiner Anweisung klickst, druecke F1, und Dir wird die Excel-Hilfe zu dem Ausdruck angezeigt. Zufaelligerweise kannst Du da genau das Beispiel sehen das Du brauchst.
Schoene Gruesse
Stefan
Anzeige
AW: Makro Tabellenblatt löschen Abfrage bestätigen
10.06.2005 07:25:16
Gunter
Danke Stefan,
das ist mir neu und wird mir in Zukunft viele Fragen an das Forum ersparen. Noch keine halb 8 und schon wieder was gelernt!! :-))
Gruß Gunter
AW: Makro Tabellenblatt löschen Abfrage bestätigen
10.06.2005 07:27:20
Hajo_Zi
Hallo Gunter,
warum ist der Beitrag als offen gekennzeichnet? Ich sehe keine weitere Frage in Deinem Beitrag.
Gruß Hajo
Das Forum lebt auch von den Rückmeldungen.
Anzeige
AW: Makro Tabellenblatt löschen Abfrage bestätigen
10.06.2005 07:35:54
Gunter
Sorry Hajo,
da ist meine Begeisterung mit mir durchgegangen.
Gruß Gunter
;
Anzeige
Anzeige

Infobox / Tutorial

Makro zum Löschen von Tabellenblättern in Excel ohne Bestätigung


Schritt-für-Schritt-Anleitung

Um ein Tabellenblatt in Excel über ein Makro zu löschen, ohne eine Bestätigungsabfrage anzuzeigen, kannst du folgenden VBA-Code verwenden:

Sub BlattLöschen()
    Application.DisplayAlerts = False ' Deaktiviert die Bestätigungsabfrage
    ActiveWindow.SelectedSheets.Delete ' Löscht das ausgewählte Blatt
    Application.DisplayAlerts = True ' Aktiviert die Bestätigungsabfrage wieder
End Sub
  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.
  2. Klicke auf „Einfügen“ und wähle „Modul“, um ein neues Modul zu erstellen.
  3. Füge den oben genannten Code in das Modul ein.
  4. Schließe den VBA-Editor und kehre zurück zu Excel.
  5. Wähle das Tabellenblatt aus, das du löschen möchtest, und führe das Makro aus.

Mit diesem Befehl kannst du das vba tabellenblatt löschen ohne Nachfrage.


Häufige Fehler und Lösungen

  • Fehler: „Laufzeitfehler 1004: Die Methode 'Delete' für das Objekt 'Sheets' ist fehlgeschlagen.“

    • Lösung: Stelle sicher, dass du ein Tabellenblatt ausgewählt hast, bevor du das Makro ausführst.
  • Fehler: Bestätigungsabfrage erscheint trotzdem.

    • Lösung: Überprüfe, ob Application.DisplayAlerts = False korrekt gesetzt ist und dass der Code nicht durch andere Makros oder Einstellungen überschrieben wird.

Alternative Methoden

Du kannst auch spezifische Blätter direkt mit ihrem Namen löschen:

Sub SpezifischesBlattLöschen()
    Application.DisplayAlerts = False
    Worksheets("Sheet3").Delete ' Ersetze "Sheet3" mit dem Namen deines Blattes
    Application.DisplayAlerts = True
End Sub

Diese Methode ist nützlich, wenn du ein spezifisches Blatt löschen möchtest, ohne es vorher auszuwählen.


Praktische Beispiele

Hier sind einige praktische Beispiele, wie du den Befehl nutzen kannst:

  1. Löschen aller leeren Blätter:
Sub LeereBlätterLöschen()
    Dim ws As Worksheet
    Application.DisplayAlerts = False
    For Each ws In ThisWorkbook.Worksheets
        If WorksheetFunction.CountA(ws.Cells) = 0 Then
            ws.Delete
        End If
    Next ws
    Application.DisplayAlerts = True
End Sub
  1. VBA zum Leeren eines Tabellenblatts:
Sub TabellenblattLeeren()
    Sheets("Sheet1").Cells.Clear ' Ersetze "Sheet1" mit dem Namen deines Blattes
End Sub

Tipps für Profis

  • Nutze Application.ScreenUpdating = False vor dem Löschen von Blättern, um die Bildschirmaktualisierung zu deaktivieren und die Ausführungsgeschwindigkeit zu erhöhen.
  • Teste deinen Code immer in einer Kopie deiner Datei, um Datenverlust zu vermeiden.
  • Dokumentiere deine Makros, um später nachvollziehen zu können, welche Funktionalitäten sie bieten.

FAQ: Häufige Fragen

1. Wie rufe ich die Excel-Hilfe auf?
Wenn du in VBA auf das Wort „Delete“ klickst und dann F1 drückst, öffnet sich die Excel-Hilfe mit weiteren Informationen.

2. Was passiert, wenn ich Application.DisplayAlerts auf False setze?
Das bedeutet, dass Excel die Bestätigungsdialoge unterdrückt und das Löschen ohne Rückfrage durchführt. Sei vorsichtig, da dies zu unbeabsichtigtem Datenverlust führen kann.

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