Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: -------> Neu: dotNet & Visual Studio Forum <-
Makro - Schleife - Leere Zeilen löschen
Gehe zu Seite 1, 2, 3  Weiter
zurück: Do While Schleife beenden weiter: Bildschirm während der Makroverarbeitung einfrieren lassen ? Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Offen
Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Demandred83
Gast


Verfasst am:
20. Feb 2006, 12:04
Rufname:

Makro - Schleife -  Leere Zeilen löschen - Makro - Schleife - Leere Zeilen löschen

Nach oben
       

Guten Morgen,

ich habe ein kleines Problem mit einer Datenreihe, und zwar bekomme ich nach dem Download in Spalte A Datumsangabe und daneben in Spalte B die dazugehörigen Werte. Da die Daten aber nur Quartalsweise vorliegen habe ich jetzt mehrere Datumsangaben ohne Werte.

Diese Zeilen möchte ich gerne mithilfe eines Makros löschen.

Im Prinzip soll die Schleife die Spalte B durchsuchen, und wenn in B kein Wert steht die ganze Zeile löschen.

Bin leider VBA - Anfänger und kriege das ganze nicht in die richtige Form. Bin dankbar für jede Hilfe.

Dank Euch

Viele Grüße
*Carlos
Case
Gast


Verfasst am:
20. Feb 2006, 12:08
Rufname:


AW: Makro - Schleife -  Leere Zeilen löschen - AW: Makro - Schleife - Leere Zeilen löschen

Nach oben
       

Hallo,

lass mal folgendes Makro rennen:

Code:
Option Explicit

Public Sub Leer_Weg()
Application.ScreenUpdating = False
Range("B:B").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
Application.ScreenUpdating = True
End Sub


Servus
Case
Case
Gast


Verfasst am:
20. Feb 2006, 12:19
Rufname:

AW: Makro - Schleife -  Leere Zeilen löschen - AW: Makro - Schleife - Leere Zeilen löschen

Nach oben
       

Hallo,

oder wenn du es zum Probieren mit Schleifenvariante möchtest:

Code:
Option Explicit

Public Sub LeerzeilenLoeschen()
Dim lngLetzte As Long
Dim lngZeile As Long
Application.ScreenUpdating = False
lngLetzte = IIf(IsEmpty(Range("B65536")), Range("B65536").End(xlUp).Row + 1, 65536)
  For lngZeile = lngLetzte To 1 Step -1
    If Cells(lngZeile, 2) = "" Then
      Cells(lngZeile, 2).EntireRow.Delete
    End If
  Next
Application.ScreenUpdating = True
End Sub


Servus
Case
Demandred83
Gast


Verfasst am:
20. Feb 2006, 12:20
Rufname:

AW: Makro - Schleife -  Leere Zeilen löschen - AW: Makro - Schleife - Leere Zeilen löschen

Nach oben
       

HI..

funktioniert leider nicht.

Hier mal ein Ausschnitt aus der Tabelle:

Spalte A Spalte B

30.06.1992 404429996032,00
31.07.1992
31.08.1992
30.09.1992 416899989504,00
31.10.1992
30.11.1992
31.12.1992 432410001408,00
31.01.1993
28.02.1993
31.03.1993 401299996672,00
30.04.1993
31.05.1993
30.06.1993 417739997184,00

Hoffe das hilft weiter.
Case
Gast


Verfasst am:
20. Feb 2006, 12:24
Rufname:


AW: Makro - Schleife -  Leere Zeilen löschen - AW: Makro - Schleife - Leere Zeilen löschen

Nach oben
       

Hallo,

also wenn die Zellen in Spalte B leer sind, dann müsste das eigentlich funzen.

Servus
Case
Demandred83
Gast


Verfasst am:
20. Feb 2006, 12:31
Rufname:

AW: Makro - Schleife -  Leere Zeilen löschen - AW: Makro - Schleife - Leere Zeilen löschen

Nach oben
       

Hi Case,

das Schleifen Makro funktioniert super. Besten Dank erstmal.

Wenn du noch ein bisschen Zeit hast wärs super wenn du mir eine kleine Erläuterung zu dem Makro geben könntest, würde gerne verstehen was du da gemacht hast, dann kann ich es beim nächsten mal vielleicht selber.

Dank Dir.

Viele Grüße *Carlos
Case
Gast


Verfasst am:
20. Feb 2006, 12:48
Rufname:

AW: Makro - Schleife -  Leere Zeilen löschen - AW: Makro - Schleife - Leere Zeilen löschen

Nach oben
       

Hallo,

hier mal mit Erklärung:

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("B65536")), Range("B65536").End(xlUp).Row + 1, 65536)
' in einer Schleife von dieser Letzten bis Zeile 1 gehen - also von unten nach oben
  For lngZeile = lngLetzte To 1 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


Servus
Case
Demandred83
Gast


Verfasst am:
20. Feb 2006, 13:10
Rufname:

AW: Makro - Schleife -  Leere Zeilen löschen - AW: Makro - Schleife - Leere Zeilen löschen

Nach oben
       

Super, vielen Dank.
Danksager
Gast


Verfasst am:
17. Apr 2009, 12:57
Rufname:

AW: Makro - Schleife -  Leere Zeilen löschen - AW: Makro - Schleife - Leere Zeilen löschen

Nach oben
       

Danke! Habe den Code auch benutzt. Funktioniert prima! Und die Kommentare im Code haben mir als Anfänger sehr geholfen bei der Abwandlung auf mein spezifisches Problem. Super!
Danksager_2
Gast


Verfasst am:
30. Apr 2009, 13:17
Rufname:

AW: Makro - Schleife -  Leere Zeilen löschen - AW: Makro - Schleife - Leere Zeilen löschen

Nach oben
       

...DANKE auch von mir - für die sehr aufschlussreiche Erklärung...
achimgr
Fortgeschrittener Einsteiger


Verfasst am:
08. Sep 2009, 21:46
Rufname: Achim
Wohnort: Niedersachsen

AW: Makro - Schleife -  Leere Zeilen löschen - AW: Makro - Schleife - Leere Zeilen löschen

Nach oben
       

Danksager 3, klasse erlärt, danke.
_________________
______________________________________
Mit freundlichen Grüßen aus Niedersachsen
**Achim**
unbekannterTyp
Gast


Verfasst am:
02. Dez 2009, 13:11
Rufname:

AW: Makro - Schleife -  Leere Zeilen löschen - AW: Makro - Schleife - Leere Zeilen löschen

Nach oben
       Version: Office 2007

@ Case
vielen dank für den Code. Ich hab die ganze Zeit es mit ActiveCell.entireRow.Delete versucht und nicht alle gelöscht bekommen.
So klappts prima
Gast



Verfasst am:
04. Jan 2010, 19:26
Rufname:

AW: Makro - Schleife -  Leere Zeilen löschen - AW: Makro - Schleife - Leere Zeilen löschen

Nach oben
       

Danke! Von unten nach oben war der entscheidene Hinweis.

hier eine vielleicht etwas einfachere Version:
Code:
Sub Leere_Zeilen_Loeschen()
    Application.ScreenUpdating = False
    Dim usedRows As Long
    usedRows = ActiveSheet.UsedRange.Rows.Count
    For row = usedRows To 1 Step -1
        If ActiveSheet.Cells(row, 2) = "" Then
            Rows(row).EntireRow.Delete
        End If
    Next
    Application.ScreenUpdating = True
End Sub
Guest
Gast


Verfasst am:
13. Jan 2010, 12:13
Rufname:

AW: Makro - Schleife -  Leere Zeilen löschen - AW: Makro - Schleife - Leere Zeilen löschen

Nach oben
       

Mille Gracie an alle, habt mir sehr weitergeholfen!!!
Gast



Verfasst am:
25. Jan 2010, 14:40
Rufname:


AW: Makro - Schleife -  Leere Zeilen löschen - AW: Makro - Schleife - Leere Zeilen löschen

Nach oben
       

danke ebenfalls. die obige ist insofern besser, als dann man bereich von-bis der durchsucht werden soll einstellen kann... so kann ich zb spalte f von zelle 5501 bis 3868 durchsuchen lassen und alles leere löschen ,o)
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Gehe zu Seite 1, 2, 3  Weiter
Diese Seite Freunden empfehlen

Seite 1 von 3
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Excel Formeln: Muß Daten kopieren mit Bezug auf mehrer Zeilen 3 Anke 762 07. Apr 2005, 10:54
Anke Muß Daten kopieren mit Bezug auf mehrer Zeilen
Keine neuen Beiträge Excel Formeln: Vergleiche von Zeilen 7 Zec 537 11. März 2005, 15:46
Zec Vergleiche von Zeilen
Keine neuen Beiträge Excel Formeln: Zeilen von Tabelle1 nach Tabelle2 holen? 2 gastler 748 26. Feb 2005, 11:09
gastler Zeilen von Tabelle1 nach Tabelle2 holen?
Keine neuen Beiträge Excel Formeln: Transponieren von Zeilen 2 Ben_Bittet_Um_Hilfe 754 17. Feb 2005, 12:11
Kuwe Transponieren von Zeilen
Keine neuen Beiträge Excel Formeln: leere Zelle - Ampelfunktion 1 Mario.S 707 17. Feb 2005, 11:07
fridgenep leere Zelle - Ampelfunktion
Keine neuen Beiträge Excel Formeln: Verknüpfung zu anderer xls-Datei löschen 3 cerkens78 879 19. Jan 2005, 12:46
Kuwe Verknüpfung zu anderer xls-Datei löschen
Keine neuen Beiträge Excel Formeln: Zeilen mit doppelten Werten löschen 6 Sebowsky 449 06. Jan 2005, 22:26
Sebowsky Zeilen mit doppelten Werten löschen
Keine neuen Beiträge Excel Formeln: Leere Zellen ignorieren! 1 Gast 1193 24. Dez 2004, 00:59
xyzdef Leere Zellen ignorieren!
Keine neuen Beiträge Excel Formeln: minuszeichen in Telefonnummern löschen z.B. 4523-21 2 reiseradler 624 21. Dez 2004, 08:31
reiseradler minuszeichen in Telefonnummern löschen z.B. 4523-21
Keine neuen Beiträge Excel Formeln: Zeilen Minimum 2 -Christoph- 1067 22. Nov 2004, 13:01
-Christoph- Zeilen Minimum
Keine neuen Beiträge Excel Formeln: Daten in Zeilen in Spalten verschieben 2 Benja 558 18. Okt 2004, 15:21
Benja Daten in Zeilen in Spalten verschieben
Keine neuen Beiträge Excel Formeln: Leere Zellen mit darüber stehender Nr. füllen 9 Daniela Freitag 1066 24. Sep 2004, 14:30
Gast Leere Zellen mit darüber stehender Nr. füllen
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Excel Tipps