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

Zeilen löschen

Zeilen löschen
Andreas
Hallo Gemeinde,
habe wieder einmal ein Problem,
Lösche mit diesem Makro den ich aus diesem Forum habe bestimmte Zeile,
funktioniert super.
Nun soll der Makro auch noch diese Zeilen löschen. Wenn in Spalte B nichts steht ,diese Zeile _ kompl.löschen, somit ich später diese Tabelle weiter bearbeiten kann.

Sub t()
Dim c As Range
Dim bereich As Range
Dim eingabe(10)
' löschzeilenwert festlegen
eingabe(1) = "hierLöschText1"
eingabe(2) = "hierLöschText2"
eingabe(3) = "hierLöschText3"
'nicht mehr als 10, oder Dim eingabe(10) ensprechend ändern
For j = 1 To 10
Set bereich = Sheets(1).UsedRange
For Each c In bereich
If c = eingabe(j) And eingabe(j)  "" Then
reihe = c.Row
spalte = c.Column
Rows(reihe).Delete
End If
Next c
Next j
End Sub

Wäre euch sehr dankbar für die Hilfe,
Wünsche ein schönes WE.
Schöne Grüße Andreas

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

Betreff
Benutzer
Anzeige
AW: Zeilen löschen
27.11.2009 11:22:22
Rudi
Hallo,
ich glaube nicht, dass das vernünftig läuft, da man eigentlich immer von unten löscht.
Trotzdem:
If c = eingabe(j) And eingabe(j) "" Or Cells(c.Row, 2)="" Then
Gruß
Rudi
AW: Zeilen löschen
27.11.2009 11:49:08
Andreas
Hallo Rudi,
danke für deine Hilfe, an welcher Stelle muss ich denn diese Zeile einfüge.
Gruß Andreas
AW: Zeilen löschen
27.11.2009 11:58:48
Detlef
Hallo Andreas,
ein weiterer Ansatz.
Modul Modul1
 
Sub t() 
    Dim c As Range 
    'Dim bereich As Range 
        Dim objBereich As Range 
        Dim objZelle  As Range 
     
     
    Dim eingabe(10) 
    ' löschzeilenwert festlegen 
    eingabe(1) = "hierLöschText1" 
    eingabe(2) = "hierLöschText2" 
    eingabe(3) = "hierLöschText3" 
    'nicht mehr als 10, oder Dim eingabe(10) ensprechend ändern 
    For j = 1 To 10 
    Set objBereich = Sheets(1).UsedRange 
        For Each c In objBereich 
                If c = eingabe(j) And eingabe(j) <> "" Then 
                      reihe = c.Row 
                      spalte = c.Column 
                      Rows(reihe).Delete 
                End If 
        Next c 
    Next j 
     
    'ab hier wird über die Funktion ZELLELEER geprüft und ggf. gelöscht 
    If Not (objBereich Is Nothing) Then 
        For Each objZelle In objBereich.Cells 
            If Zelleleer(objZelle) Then 
                objZelle.EntireRow.Delete 
            End If 
        Next objZelle 
    End If 
 
End Sub 
 
Function Zelleleer(objZelle As Range) As Boolean 
    If (objZelle.Value = Empty) And _
        ((Trim(objZelle.Value) = "") And _
        (objZelle.Formula = "")) Then 
        Zelleleer = True 
    Else 
        Zelleleer = False 
    End If 
End Function 
 
 

Gruß Detlef
Anzeige
AW: Zeilen löschen
27.11.2009 13:10:08
Andreas
Hallo Rudi und Detlef,
ich danke euch das ihr mit geholfen habt, habe mit noch eine andere Lösung einfallen lassen.
Wünsche euch ein schönes WE.
Schöne Grüße Andreas

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige