Anzeige
Archiv - Navigation
1416to1420
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

Zellen löschen

Zellen löschen
07.04.2015 08:36:38
Fritz
Leider geht der alte Fragethread nicht mehr darum habe ich alles in ein neues kopiert.
Hallo alle
Ich habe ein ganz einfaches Problem:
Ich habe in meiner Tabelle in der Spalte D ganz viele zellen mit zahlen drinn, und zusätzlich text. Ich würde gerne alle Zellen in denen zahlen unter 30 Millionen sind mitsamt der ganzen Zeile entfernen lassen und automatisch nach oben rücken lassen. Geht das irgendwie?
danke im vorraus für die Hilfe
Gruss Fritz
Hallo Fritz!
Ich habe ein ganz einfaches Problem
Das ist noch nicht sicher :-). Wir können Dir aber leichter bzw. überhaupt helfen, wenn wir konkreter Wissen, wie Deine Tabelle aussieht bzw. Deine Daten konkret beschaffen sind. Zum Beispiel:
ganz viele zellen mit zahlen drinn, und zusätzlich text
Heißt das in den Zellen in Spalte D stehen jeweils entweder Zahlen ODER Text oder heißt das, dass in den Zellen bisweilen alphanumerische Werte stehen, also Text und Ziffern gemischt in einer Zelle.
Lade doch einfach eine Beispieldatei hoch (anonymisiert etc.), sagen wir mit 20 Einträgen in Spalte D (die so aussehen/beschaffen sein sollten, wie in Deinem Original, aber eben nicht die echten Werte). Dann findet sich vermutlich jemand, der weiterhelfen kann.
LG
Michael

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellen löschen
07.04.2015 08:38:39
Fritz
Ich habe noch ein Muster hinaufgeladen. Hoffe das bringt etwas :)

AW: Zellen löschen
07.04.2015 09:26:58
Bernd
Hi!
meinst Du so:
Option Explicit
Sub test()
Dim i As Integer
Dim n As Integer
i = Cells(Rows.Count, 4).End(xlUp).Row
For n = 1 To i
If Cells(n, 4).Value 
lg Bernd

AW: Zellen löschen
07.04.2015 09:54:44
Fritz
Hallo Bernd
Ja das ganze funktioniert so etwa. Nur muss ich das Makro etwa 4 oder 5 mal neu starten bis alle Zeilen weg sind. Kann ich auch einstellen, dass das ganze auf einmal funktioniert?

Anzeige
AW: Zellen löschen
07.04.2015 10:00:40
Bernd
Hi,
habe diesen Code selber nur aus dem Netz, bin leider kein VBA Profi.
Wird sich aber sicher wer finden, der ihn dementsprechend abändern kann, stelle Deinen
Beitrag deshalb wieder auf offen!
lg Bernd

AW: Zellen löschen
07.04.2015 10:07:55
Werner
Hallo Fritz,
ändere die Code-Zeile
For n = 1 To i
um in
For n = i To 1 Step -1
dann sollte es funktionieren.
Gruß Werner

AW: Zellen löschen
07.04.2015 10:10:01
EtoPHG
Hallo Nix Fritz,
1. Hast du das mit 3 Klicks manuell erledigt: Autofilter, Filter 2. Wenn du unbedingt mit VBA löschen willst:
2.a Immer von hinten nach vorne, sonst hast du den Wiederholungs-Effekt!
2.b Zeilen-Index immer Long
2.c .Select/Selection sind ziemlich überflüssige Befehle in VBA
3. Besser als ActiveSheet (im Code unten), wäre die Referenzierung des richtigen Tabellenblatts!
Option Explicit
Sub DeleteLess30Mio()
Dim lRow As Long
Application.ScreenUpdating = False
With ActiveSheet
For lRow = .Cells(.Rows.Count, 4).End(xlUp).Row To 1 Step -1
If .Cells(lRow, 4) 
Gruess Hansueli

Anzeige
AW: Zellen löschen
07.04.2015 10:36:37
Fritz
Hallo Hansueli
so erst mal danke, beide Tipps von dir funktionieren bestens. Das Makro läuft auch wunderbar schnell und sauber. Ich würde sagen, ich habe meine Lösung.
Vielen Dank allen! :)
gruss fritz

AW: Zellen löschen
07.04.2015 11:04:11
Daniel
Hi
wenns wirklich schnell gehen soll, ist folgende Vorgehensweise die beste:
1. schreibe in eine Hilfsspalte eine formel, die alle Zeilen die gelöscht werden sollen mit 0 kennzeichnet und die die stehen bleiben müssen, mit der aktuellen Zeilennummer.
=Wenn(D1
ziehe die Formel bis ans Datenende
2. schreibe in die Überschriftenzeile der Hilfsspalte ebenfalls die 0
3. wende auf die ganze Tabelle die Funktion DATEN - DATENTOOLS - DUPLIKATE ENTFERNEN an, mit der Hilfsspalte als Kriterium und der Option "keine Überschrift"
4. lösche die Hilfsspalte.
das ist, wenn die Daten unsortiert sind, noch schneller als der Autofilter und lässt sich sowohl von Hand als auch per marko einfach ausführen.
Über die Formel lassen sich auch kompliziertere Bedinungen darstellen als mit dem Autofilter.
Ausserdem kannst du bei der Programmentwicklung leichter kontrollieren, ob auch alle richtigen Zeilen gelöscht werden, weil sie vor dem Löschen über die Formel markiert werden und du dir das anschauen kannst, bevor du die Zeilen endgültig löschst.
sieht als Code so aus:
With activeSheet.usedrange
with .columns(.columns.count + 1)
.FormulaR1C1 = "=IF(RC4
Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige