Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1172to1176
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

Tabelle bearbeiten

Tabelle bearbeiten
alifa
Hallo,
in Spalte E Tabelle 1 stehen 305 fünfstellige Zahlen. Nun möchte ich alle Zahlen, die zwei gleiche benachbarte Ziffern haben, löschen.
Beispiel: 11234, 12245, 23333, 13400....
Anschließend sollen die leeren Zeilen( wo die Zellen gelöscht wurden) alle gelöscht werden. Wie kann man das mit einem Macro lösen?
Danke im Voraus, Alifa

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Päärchen rausschmeißen
05.09.2010 15:03:09
WF
Hi,
Makros benutze ich ja nicht.
Um die betreffenden Zahlen zu markieren, schreibe in Hilfsspalte F1:
=ANZAHL(FINDEN({"00";11;22;33;44;55;66;77;88;99};E1))
runterkopieren
Rausschmeißen musst Du dann alle Zeilen, in denen nicht 0 steht.
Salut WF
AW: Tabelle bearbeiten
06.09.2010 06:53:01
Marc
Guten Morgen!
Eine VBA-Lösung könnte so aussehen:
Sub Pärchen_killen()
Range("E:E").SpecialCells(xlCellTypeConstants).Select
For Each zell In Selection
For zahl = 11 To 99 Step 11
If InStr(1, zell, zahl) > 0 Then
zell.Interior.ColorIndex = 3
Exit For
ElseIf InStr(1, zell, "00") > 0 Then
zell.Interior.ColorIndex = 3
End If
Next zahl
Next zell
lz = Cells(Rows.Count, "e").End(xlUp).Row
For x = lz To 1 Step -1
If Cells(x, "E").Interior.ColorIndex = 3 Then
Cells(x, "E").Delete
End If
Next x
End Sub

Anzeige
AW: Tabelle bearbeiten
06.09.2010 09:03:50
alifa
Danke Marc,
das funktioniert ausgezeichnet, vielleicht kannst Du das kurz kommentieren. Z.B. verstehe ich das mit 11 und 99, so wie "00" nicht.
AW: Tabelle bearbeiten
07.09.2010 06:22:55
Marc
Sicher:
Sub Pärchen_killen()
Range("E:E").SpecialCells(xlCellTypeConstants).Select 'markiert alle Zellen mit Konstanten in  _
Spalte E
For Each zell In Selection 'geh jede markierte Zelle durch
For zahl = 11 To 99 Step 11 'Variable zahl mit 11 beginnen bis 99, in 11er-Schritten (die  _
Zahlen waren gefordert)
If InStr(1, zell, zahl) > 0 Then 'wenn die Zahl vorkommte
zell.Interior.ColorIndex = 3 'rot färben
Exit For' nächste zelle prüfen
ElseIf InStr(1, zell, "00") > 0 Then ' doppelnull kann nicht als Zahl dargestellt  _
werden, daher hier als String abgefragt
zell.Interior.ColorIndex = 3 'rot färben
End If
Next zahl
Next zell
lz = Cells(Rows.Count, "e").End(xlUp).Row 'letzte benutzte Zeile suchen in Spalte E
For x = lz To 1 Step -1 'von unten nach oben
If Cells(x, "E").Interior.ColorIndex = 3 Then 'wenn Zelle ist rot
Cells(x, "E").Delete 'löschen
End If
Next x
End Sub
Ich hoffe, du kannst damit was anfangen.
Gruß, Marc
Anzeige
AW: Tabelle bearbeiten
07.09.2010 17:50:57
alifa
Ja, das kann ich, jetzt ist (fast) alles klar.
Danke für Deine Hilfe, Alifa

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige