Leere Zeilen löschen, Prüfung erweitern
#1
Guten Tag zusammen,

ich nutze derzeit ein Makro, welches leere Zeilen aus einer Tabelle löscht. 

Code:
' Variablen MÜSSEN deklariert werden (beugt Fehlern in der Variablenvergabe vor)
Option Explicit

Public Sub LeerzeilenLoeschen()
' Die Variable lngLetzte wird als Typ Long deklariert
Dim lngLetzte As Long
' Die Variable lngZeile wird als Typ Long deklariert
Dim lngZeile As Long
' Bildschirmaktualisierung AUSschalten (Makro läuft schneller, Bildschirm flackert nicht)
Application.ScreenUpdating = False
' Letzte belegte Zelle in Spalte B plus 1 raussuchen und merken
lngLetzte = IIf(IsEmpty(Range("B")), Range("B37").End(xlUp).Row + 1, 37)
' in einer Schleife von dieser Letzten bis Zeile 1 gehen - also von unten nach oben
  For lngZeile = lngLetzte To 9 Step -1
' Wenn die Zelle in der ensprechenden Zeile in Spalte B leer ist
    If Cells(lngZeile, 2) = "" Then
' dann lösche die gesamte Zeile
      Cells(lngZeile, 2).EntireRow.Delete
' Ende der Bedingung
    End If
' Nächste Zeile mit der Bedingung vergleichen
  Next
' Bildschirmaktualisierung EINschalten (nicht vergessen)
Application.ScreenUpdating = True
End Sub

Dieser soll nach Möglichkeit in den Bereichen B9:B37 UND D9:D37 prüfen ob Inhalt in der Zeile ist. Wenn BEIDE leer sind dann soll dieser die Zeile löschen sonst nicht. Weiss jemand wie ich diesen Code dafür umschreiben muss?
Top
#2
Hallo,
Sub LeerzeilenLoeschen()
  Dim rngB As Range, rngD As Range
  On Error Resume Next
  Set rngB = Range("B9:B37").SpecialCells(xlCellTypeBlanks).EntireRow
  Set rngD = Range("D9:D37").SpecialCells(xlCellTypeBlanks).EntireRow
  Application.Intersect(rngB, rngD).Delete
  On Error GoTo 0
End Sub
Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • elamigo
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste