Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
12.07.2008 11:02:16 |
Max Braunschweiger |
|
|
|
13.07.2008 10:59:36 |
jh |
|
|
Aw:Aw:Leere Zeilen löschen in Excel VBA |
13.07.2008 19:28:14 |
Max Braunschweiger |
|
|
|
14.07.2008 06:52:27 |
jh |
|
|
Von:
Max Braunschweiger |
Datum:
13.07.2008 19:28:14 |
Views:
2027 |
Rating:
|
Antwort:
|
Thema:
Aw:Aw:Leere Zeilen löschen in Excel VBA |
jh schrieb am 13.07.2008 10:59:36:
Hallo,
ob das nun die eleganteste Methode ist, sei mal dahingestellt,
aber sie funktioniert:
Private Sub LeereZeilenLoeschen()
Dim a As Long, e As Long, z As Long
' erste und letzte Zeile ermitteln
a = Tabelle1.UsedRange.Rows(1).Row
e = a + Tabelle1.UsedRange.Rows.Count - 1
For z = e To a Step -1
' Bereich rückwärts durchlaufen, da sonst bei
' mehreren aufeinanderfolgenden Leerzeilen
' nicht alle gelöscht werden
If Cells(z, 1) = "" Then ' erste Zelle leer
If Cells(z, 256).End(xlToLeft).Column = 1 Then
' Rest der Zeile auch leer
Tabelle1.Rows(z).Delete
End If
End If
Next z
' leere Zeilen am Anfang der Tabelle löschen
' (wenn gewünscht)
If a > 1 Then
Rows("1:" & CStr(a - 1)).Delete
End If
End Sub
Fehler in deinem Makro:
Zeilennummern immer als Long deklarieren
(sonst Fehler bei Zeilen ab 32768)
Value kannst du für Range mit mehr als einer Zelle nur verwenden,
um den Bereich an einen Variant zuzuweisen
Empty bezieht sich eigentlich nur auf nicht initialisierten Variant,
funktioniert allerdings auch mit einzelnen Zellen, aber nicht bei
Range mit mehreren Zellen
dann aber nicht ...Value = "empty" - das bedeutet, dass in der Zelle
das Wort "empty" steht - sondern so:
If IsEmpty(Cells(z, s)) Then ...
Gruß
Hey vielen Dank
ich probiers mal aus. Auch vielen Dank für die Rückmeldungen auf meine Fehler. So lernt man lebendig.
Danke
Max |
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
12.07.2008 11:02:16 |
Max Braunschweiger |
|
|
|
13.07.2008 10:59:36 |
jh |
|
|
Aw:Aw:Leere Zeilen löschen in Excel VBA |
13.07.2008 19:28:14 |
Max Braunschweiger |
|
|
|
14.07.2008 06:52:27 |
jh |
|
|