Anzeige
Archiv - Navigation
1328to1332
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
Leere Zeilen löschen
18.09.2013 20:59:14
ste
Hallo zusammen,
In meinem Excelfile habe ich mehrere Spalten und das Thema ist das automatische Löschen von leeren Zeilen.
Für die Spalte A habe ich folgende Verlinkung (=WENN(ISTZAHL(SUCHEN("V1";Einsatzjournal!A5));Einsatzjournal!A5;"") zu einem anderen Tabellenblatt erstellt und somit schreibt es mir alle Werte in die Zeile, wo V1 enthalten ist. Falls dies nicht der Fall wird kein Wert ausgegeben.
Bsp:
Ist Lösung
Zeile 1 V1 V1
Zeile 2 V1
Zeile 3 V1 V1
Zeile 4
Zeile 5 V1
Nun habe ich viele Zeilen, wo kein Wert ausgegeben wird und diese Zeilen würde ich gerne automatisch löschen um nicht immer über den Autofilter zu arbeiten.
Meine Kenntnisse im Excel sind sehr bescheiden und daher würde ich mich extrem über Hilfe freuen.
Vielen Dank und gruss

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

Betreff
Datum
Anwender
Anzeige
LöschPgmm gibt's jede Menge im Archiv! orT
18.09.2013 21:01:18
Luc:-?
Gruß Luc :-?

AW: Leere Zeilen löschen
19.09.2013 07:19:20
Hajo_Zi

Option Explicit
Sub Leerzeilenlöschen()
' Leerzeilen löschen einschließlich der Zeilen die entstehen wenn Zeilen am ende
' gelöscht werden, auch Leerzeilen in der Tabelle werden gelöscht
' von Wolf.W.Radzinski
' es wurden nicht alle Leerzeilen in einer Datei erkannt
' darum Ergänzung angepast nach Zeilen mit Leerstellen löschen
On Error Resume Next
Application.ScreenUpdating = False
Dim r As Range
Dim anz As Long
Dim c_ges As Long
Dim col As New Collection
c_ges = ActiveSheet.UsedRange.Column + ActiveSheet.UsedRange.Columns.Count - 1
For Each r In ActiveSheet.UsedRange.EntireRow
anz = 0
'******** Hajo.Ziplies@web.de
Dim I As Byte
Dim L As Byte
L = 0
For I = 1 To 20
If Trim(Cells(r.Row, I))  "" Then
L = 1
Exit For
End If
Next I
If L = 0 Then col.Add r
'anz = r.SpecialCells(xlCellTypeBlanks).Count
'If anz >= c_ges Then col.Add r
Next
For Each r In col
r.Delete
Next
Application.ScreenUpdating = True
End Sub

Anzeige
AW: Leere Zeilen löschen
19.09.2013 09:13:23
Luschi
Hallo ste,
hier mal ein Beispiel, wie man für solche Zwecke sinnvoll das ListObject anwendet,
welches es seit Excel_2003 gibt!

Sub LoeschenLeereZeilen()
Dim lstObj As ListObject, ws As Worksheet, rg As Range
Dim i1 As Integer, i2 As Integer
'Tabelle mit den Formeln (hier anpassen)
Set ws = Tabelle2
'ListObject definieren
Set lstObj = ws.ListObjects.Add(xlSrcRange, ws.UsedRange, , xlYes)
With lstObj
.Range.Select
'automatische Farbvergabe entfernen
.TableStyle = ""
'Anzahl der Spalten
i1 = .Range.Columns.Count
For i2 = 1 To i1
'für jede Spalte den Filter setzen
.Range.AutoFilter Field:=i2, Criteria1:="="
Next i2
End With
On Error Resume Next
'ermitteln der sichtbaten zellen im ListObject
Set rg = lstObj.DataBodyRange.SpecialCells(xlCellTypeVisible)
On Error GoTo 0
'Cursor auf 1. Zelle des ListObjekts setzen
lstObj.HeaderRowRange.Cells(1, 1).Select
'Listobject in normalen Bereich zurückwandeln
lstObj.Unlist
Selection.Cells(1, 1).Select
If Not (rg Is Nothing) Then
Debug.Print rg.EntireRow.Address
'leere Zeilen löschen
rg.EntireRow.Delete
End If
'definierte Objekte entfernen
Set lstObj = Nothing
Set ws = Nothing
Set rg = Nothing
End Sub
Gruß von Luschi
aus klein_Paris

Anzeige
noch ein Code
19.09.2013 09:35:45
Rudi
Hallo,
Sub del()
Application.ScreenUpdating = False
With Columns(1).SpecialCells(xlCellTypeFormulas).Offset(, 1000)
.FormulaR1C1 = "=if(len(rc1),""x"",#n/a)"
.SpecialCells(xlCellTypeFormulas, xlErrors).EntireRow.Delete
.ClearContents
End With
End Sub

Gruß
Rudi

319 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige