Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1904to1908
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
Inhaltsverzeichnis

bereich leere Zellen löschen,

bereich leere Zellen löschen,
24.10.2022 12:10:00
Micha
Guten Tag in die Runde,
Ich habe eine Riesendatei aus dem ERP System zum auswerten, allerdings ist die Struktur sehr unübersichtlich...
Das ganze geht Zeilenwiese
A:F →Grunddaten
A:F →Leer →G:P Infodaten
A:F →Leer →G:P Leer → Q:Z Infodaten
A:F →Leer →G:P Leer → Q:Z leer → AA:AJ Infodaten
Das geht so weiter bis Stufe 6
Mein Ziel ist es alle Infodaten in G:P zu holen.
Händisch geht das mit:
Leere Zellen auswählen; rechtemaustaste "Zellen Löschen"; Zellen nach links verschieben.
Der Makrorekorder macht folgendes draus

Sub ZellenLöschen1()
Range("G158:P162").Select
Selection.Delete Shift:=xlToLeft
ActiveWindow.SmallScroll Down:=10
Range("G168:P168").Select
Selection.Delete Shift:=xlToLeft
ActiveWindow.SmallScroll Down:=5
Range("G171:P171").Select
Selection.Delete Shift:=xlToLeft
End Sub
So weit so gut, wie kann ich meinem Makro beibringen das es die nächste Zeile sucht mit G:P leer und das löschen / verschieben wiederholt.
Anhand des Makroversuches sieht man ja, manchmal sind es mehrere Zeilen, manchmal nur eine...
Evtl geht das auch mit einer Formel, aber mich deucht per VBA kommt man schneller an's Ziel
noch zur INfo, meine VBA Kenntnisse sind eher nicht vorhanden.....
Danke schonmal für die Hilfe und beste Grüße
Micha

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

Betreff
Datum
Anwender
Anzeige
AW: bereich leere Zellen löschen,
24.10.2022 12:39:59
Daniel
Hi
wie wählst du denn die leeren Zellen aus?
direkt von Hand oder über die Menüfunktion START - BEARBEITEN - SUCHEN UND AUSWÄHLEN - INHALTE... - LEERE ZELLEN ?
wenn du das machst, müsste dein Code eigentlich lauten:

Range("G:P").SpecialCells(xlcelltypeblanks).Delete Shift:=xltoleft
Gruß Daniel
AW: bereich leere Zellen löschen,
24.10.2022 12:45:42
GerdL
Hallo Micha,
probiere zuerst an einer Kopie.

Sub Unit()
Range("G:AJ").SpecialCells(xlCellTypeBlanks).Delete shift:=xlToLeft
Range("A:F").SpecialCells(xlCellTypeConstants).Insert xlToRight
End Sub
Gruß Gerd
Anzeige
AW: bereich leere Zellen löschen,
25.10.2022 10:18:01
Micha
Moin moin,
beide Varianten habe ich ausprobiert,
Bei einer Datei ~3000 Zeilen hat es funktioniert :-)
Bei einer anderen Datei ~26.000 Zeilen friert Excel ein, ohne eine Aktion :-(
Rein gedanklich habe ich da noch einen anderen Ansatz.....
If Range("A:F").SpecialCells(xlCellTypeBlanks)
then select Range ("G:L")
Selection.Cut
Range ("A"). select
ActiveSheet. Paste
Next....
Was da schlauer ist, also Excel weniger stresst, kann ich nicht beurteilen....
aus dem Bauch raus würde ich sagen zweiteres.....
Grüße derweil
Micha
AW: bereich leere Zellen löschen,
25.10.2022 10:30:50
Daniel
Hi
Copy-Paste bzw Cut müsste etwas weniger stressig sein als das Löschen von Zellen.
Man kann den Arbeitsaufwand für Excel oft auch durch geschicktes Sortieren reduzieren.
Wenn du die Liste vor dem Löschen so sortierst, dass-
alle Zeilen mit daten in G:P direkt untereinander stehen und dann alle Zeilen mit Daten in Q:Z direkt untereinander und dann alle Zeilen mit Daten in AA:AJ direkt untereinander, dann ist das für Excel auch viel einfacher, als wenn das in jeder Zeile wechselt.
hinterher kanns du ja wieder zurück sortieren.
Gruß Daniel
Anzeige

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige