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

Tabellenblätter löschen, wenn Zelle leer

Tabellenblätter löschen, wenn Zelle leer
21.01.2021 18:39:46
Jana
Ich möchte gerne automatische Quittungen erstellen. Dazu gibt es das "Bestellblatt" mit allen Mitarbeiternamen (Zellen "A10:A84"). Wenn die Gesamtsumme (Zellen "AG10:84") bei dem jeweiligen Mitarbeiter nicht leer ist, soll ein Tabellenbaltt mit einer Quittung angelegt werden und die tägliche Bestellung des Mitarbeiters aus dem Bestellblatt übernommen werden. Dazu habe ich ein Tabellenblatt "Quittung_Muster" erstellt und die entsprechenden Zellbezüge hergestellt.
Nun zur VGA-Programmierung:
Sub Quittungen_anlegen()
Dim quittMuster As Range, zz As Long, ss As Long
Set quittMuster = Sheets("Quittung_Muster").Columns("A:C")
With Sheets("Bestellblatt")
For zz = (10) To (84)
For ss = 1 To Sheets.Count
If Sheets(ss).Name = CStr(.Cells(zz, 1)) Then
MsgBox "Blatt '" & .Cells(zz, 1) & "' bereits vorhanden.", vbInformation
Exit For
End If
Next ss
If ss > Sheets.Count Then
Worksheets.Add after:=Sheets(Sheets.Count)
quittMuster.Copy Cells(1, 1)
Cells(4, 2) = .Cells(zz, 1)
ActiveSheet.Name = CStr(Cells(4, 2))
End If
Next zz
End With
End Sub

Das funktioniert gut. Nun möchte ich aber die Quittungen wieder automatisch löschen, deren Gesamtsumme (Zelle: C33) 0 € beträgt. Ich habe es so probiert, aber das funktioniert leider nicht:
Function Loeschen()
Dim objBlatt As Worksheet
Application.DisplayAlerts = False
For Each objBlatt In Worksheets
Select Case objBlatt.Name
Case "Bestellblatt", "Quittung_Muster"
Case Else
If objBlatt.Cells(33, 2).Value = "" Then objBlatt.Delete
End Select
Next
Application.DisplayAlerts = True
End Function

Ich würde mich sehr freuen, wenn Ihr mir weiterhelfen könntet. Hier die Excel-Datei: https://www.herber.de/bbs/user/143206.xlsx
Schon einmal vielen lieben Dank.

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblätter löschen, wenn Zelle leer
21.01.2021 18:49:59
Regina
Hi,
Du musst dann auch auf 0 prüfen und nicht auf "" (leer)
Gruß Regina
AW: Tabellenblätter löschen, wenn Zelle leer
21.01.2021 21:13:56
GerdL
Moin Jana,
... und Sub Loeschen statt Function Loeschen sowie Cells(33, 3) für C33.
Gruß Gerd
AW: Tabellenblätter löschen, wenn Zelle leer
22.01.2021 09:57:53
Herbert_Grom
Hallo Jana,
probiers mal damit, damit hat es bei mir funktioniert:
Sub Quittungen_loeschen()
Dim iCount%
For iCount = 1 To Sheets.Count - 2
If Sheets("Name " & iCount).Cells(33, 3) = 0 Then
Application.DisplayAlerts = False
Sheets("Name " & iCount).Delete
End If
Next iCount
End Sub
Servus
AW: Tabellenblätter löschen, wenn Zelle leer
22.01.2021 13:26:07
Jana
Vielen lieben Dank, es hat geklappt.
AW: Gerne geschehen und danke für die Rückmeldung!
22.01.2021 15:31:24
Herbert_Grom
,,,
Anzeige

306 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige