Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
948to952
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
948to952
948to952
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

löschen von zeilen

löschen von zeilen
10.02.2008 14:04:00
zeilen
hallo gemeinde
ich habe ein tabellenblatt mit dem namen ORGINAL in dem die spalten A bis C vorhanden sind.
ich möchte, das alle zeilen in denn die spalte A leer ist ( C kann gefüllt sein ) gelöscht werden.
danke im vorraus
rolf

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

Betreff
Datum
Anwender
Anzeige
AW: löschen von zeilen
10.02.2008 14:25:00
zeilen
Hi
wenn es nicht allzuviele Zeilen sind, kannst du so vorgehen:
- Spalte A markieren
- BEARBEITEN - GEHE ZU - INHALTE klicken und dort LEERZELLEN auswählen
- BEARBEITEN - ZELLEN LÖSCHEN klicken und dann GANZE ZEILE auswählen
wenn du es als Makro brauchst, lass den Recorder mitlaufen.
das geht so aber nur, wenn die Zellen in A wirklich leer sind und keine Formeln enthalten, die als Ergebnis den Leerstring haben.
sollte deine Datei sehr gross sein (mehrere tausend Zeilen) ist es ratsam, vorher die Datei nach Spalte A zu sortieren, so das alle zu löschenden Zeilen ununterbrochen untereinander stehen.
Gruß, Daniel

Anzeige
AW: löschen von zeilen
10.02.2008 14:46:00
zeilen
Hallo,
habe hier mal zwei Makros zusammengebaut.
Makro1

'Für Zellen die richtig leer sind
'Ohne Formel usw...
Sub Lösche_Leere_In_ORGINAL()
Dim Zellen As String
Dim Sp As Variant
Dim a As Long, AnZ As Long
With Sheets("ORGINAL")
Zellen = .Columns("A:A").SpecialCells(xlCellTypeBlanks).Address
AnZ = .Columns("A:A").SpecialCells(xlCellTypeBlanks).Count
Sp = Split(Zellen, ",")
For a = AnZ - 1 To 0 Step -1
.Rows(.Range(Sp(a)).Row).Delete Shift:=xlUp
Next a
End With
End Sub


Makro2


'sind die Zellen nicht leer sondern mit Formel
Sub Lösche_Leere_In_ORGINAL_2()
Dim a As Long
With Sheets("ORGINAL")
For a = .Columns("A:A").SpecialCells(xlCellTypeLastCell).Row To 1 Step -1
If .Cells(a, 1) = "" Then .Rows(Cells(a, 1).Row).Delete Shift:=xlUp
Next a
End With
End Sub


Gruß
Tino

Anzeige
AW: löschen von zeilen
10.02.2008 15:02:31
zeilen
Hi Tino
diese Schleifen, in denen die Zeilen einzeln gelöscht werden, sind von der Geschwindigkeit her ne Katastrophe.
Wenn über Makro gelöscht werden soll, dann so, das geht dann auch in Dateien mit 60.000 Zeilen sehr schnell:

Sub löschen()
Columns(1).Insert
With Range("A1:A" & ActiveSheet.UsedRange.Rows.Count)
.FormulaR1C1 = "=if(RC[1]="""",true,row())"
.Formula = .Value
.CurrentRegion.Sort key1:=.Cells(1, 1), order1:=xlAscending, header:=xlNo
.SpecialCells(xlCellTypeConstants, 4).EntireRow.Delete
.EntireColumn.Delete
End With
End Sub


Gruß, Daniel

Anzeige
AW: löschen von zeilen
10.02.2008 16:04:11
zeilen
Hallo,
du hast natürlich Recht.
Danke für die Korrektur!
Gruß
Tino

AW: löschen von zeilen
10.02.2008 16:08:26
zeilen
ich danke euch, funzt
rolf

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige