Leerzeilen löschen mit VBA

Dieses Thema Leerzeilen löschen mit VBA im Forum "Windows XP Forum" wurde erstellt von Nick_Stgt, 29. Mai 2005.

Thema: Leerzeilen löschen mit VBA Hallo Zusammen, ich schreibe im Moment an einem Makro. Dieses Makro soll Daten aus einer Exceldatei in eine neue...

  1. Hallo Zusammen,

    ich schreibe im Moment an einem Makro. Dieses Makro soll Daten aus einer Exceldatei in eine neue Arbeitsmappe kopieren. Das Problem dabei ist, dass ich, nachdem die Daten kopiert wurden, auch immer ein paar Leerzeilen habe. Diese möchte ich automatisch löschen. Ich muss dazu sagen, dass ich noch ziemlicher Anfänger bin, was das VBA-Programmieren betrifft. Leider mußte ich feststellen, dass es gar nicht so einfach ist einen Code zu schreiben, mit dem man die Leerzeilen löschen kann. Es soll so funktionieren:

    Es soll von Spalte A bis X geprüft werden, ob eine GANZE Zeile leer ist. Ist sie es, soll die ganze Zeile gelöscht werden.

    Hört sich ganz einfach an, ist aber für mich ein Riesenproblem, da ich im Schleifenprogrammieren noch sehr sehr schlecht bin. Vielleicht kann mir ja jemand helfen. Übrigens sind die Daten alle als Text formatiert.

    Es würde mich sehr freuen, wenn mir jemand weiterhelfen könnte.

    Vielen Dank schon im Voraus.
     
  2. Hallo

    Kopiere die folgenden Makrozeilen in ein Visual basic modul welches immer zur verfügung steht (Global).
    Rufe dann aus der Tabelle mit Leerzeilen und (oder) Spalten Makro LeereZeilenSpaltenLöschen auf,
    kannst dann auswählen ob Leere- Zeilen und (oder) Spalten gelöscht werden sollen.

    MfG hddiesel

    Sub LeereZeilenSpaltenLöschen()
    Dim LZeile As Long, LSpalte As Long
    Dim Letzte As Long, Zeile As Long, Spalte As Long
    Dim i As Integer, TopPos As Integer
    Dim DruckDlg As DialogSheet
    Dim CurrentSheet As Worksheet
    Dim CB As CheckBox
    Application.ScreenUpdating = False
    Set CurrentSheet = ActiveSheet
    Set DruckDlg = ActiveWorkbook.DialogSheets.Add
    DruckDlg.CheckBoxes.Add 78, 40, 70, 16.5
    DruckDlg.CheckBoxes(1).Text = Leere Zeilen
    DruckDlg.CheckBoxes.Add 78, 53, 70, 16.5
    DruckDlg.CheckBoxes(2).Text = Leere Spalten
    DruckDlg.Buttons.Left = 200
    With DruckDlg.DialogFrame
    .Height = Application.Max(68, DruckDlg.DialogFrame.Top + TopPos - 34)
    .Width = 230
    .Caption = Leere Elemente zum Löschen auswählen
    End With
    DruckDlg.Buttons(Button 2).BringToFront
    DruckDlg.Buttons(Button 3).BringToFront
    LZeile = False
    LSpalte = False
    CurrentSheet.Activate
    Application.ScreenUpdating = True
    If DruckDlg.Show Then
    If DruckDlg.CheckBoxes(1).Value = xlOn Then LZeile = True
    If DruckDlg.CheckBoxes(2).Value = xlOn Then LSpalte = True
    End If
    Application.DisplayAlerts = False
    DruckDlg.Delete
    CurrentSheet.Activate
    Application.ScreenUpdating = False
    If LZeile Then
    Letzte = ActiveSheet.UsedRange.Rows.Count
    For Zeile = Letzte To 1 Step -1
    If Application.CountA(ActiveSheet.Rows(Zeile)) = 0 Then _
    ActiveSheet.Rows(Zeile).Delete
    Next Zeile
    End If
    If LSpalte Then
    Letzte = ActiveSheet.UsedRange.Columns.Count
    For Spalte = Letzte To 1 Step -1
    If Application.CountA(ActiveSheet.Columns(Spalte)) = 0 Then ActiveSheet.Columns(Spalte).Delete
    Next Spalte
    End If
    Application.ScreenUpdating = True
    End Sub
     
  3. Hallo HDDiesel,

    vielen Dank für Deine Antwort. Ich werde es morgen mal testen. So auf den ersten Blick sieht es ja ziemlich komplex aus. Ich bin gespannt, ob es funktioniert.

    Viele Grüße

    Nick
     
Die Seite wird geladen...

Leerzeilen löschen mit VBA - Ähnliche Themen

Forum Datum
Leerzeilen löschen - Fehler im Code Windows XP Forum 7. Aug. 2006
Makro zur Automatisierung des Ausblendens von Leerzeilen? Microsoft Office Suite 1. Okt. 2004
Löschen einzelner Einträge in der Systemsteuerung Windows 10 Forum 15. Aug. 2016
Windows Passwort löschen geht nicht Windows 10 Forum 13. Aug. 2016
Windows 10 Konto löschen, Programme behalten Windows 10 Forum 20. Mai 2016