[Excel, VBA] ungenutzte Tabellenblätter löschen

Gepostet am: May 20, 2011 1:25:25 PM

Mit folgenden VBA-Code kann man alle unbenutzten Tabellenblätter einer Arbeitsmappe entfernen. Ich habe beispielsweise meiner Speicherfunktion diesen VBA-Code vorgelagert, damit wirklich nur benutzte Tabellenblätter in der Arbeitsmappe gespeichert werden.

unbenutzte Tabellenblätter löschen

Public Sub unbenutzte_Tabellenblaetter_loeschen()Dim wks As Worksheet   For Each wks In Worksheets     'letzte belegte Zelle im Arbeitsblatt ermitteln      Dim lngLast As Long      Dim rg As range      Set rg = wks.Cells.Find("*", Cells(1, 1), xlFormulas, , xlByRows, xlPrevious)      If rg Is Nothing Then          lngLast = 0      Else ' Wert gefunden          lngLast = rg.Row      End If      If lngLast = 0 Then 'wenn 0 löschen         Application.DisplayAlerts = False         wks.Delete         Application.DisplayAlerts = True      End IfNextEnd Sub