Anzeige
Archiv - Navigation
912to916
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
912to916
912to916
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Zellen mit ":" löschen.
14.10.2007 12:17:04
Wolfgang
Hallo*,
in das Tabellenblatt "Ergebnis" wird Text hineinkopiert. Wie kann ich erreichen, dass Zellen (Bereich von C5:C26 und ein anderer Bereich von E5:E26) die zum Text noch einen ":" enthalten, gelöscht werden und nach oben geschoben werden. Irgendwie kriege ich das mit dem Makrorekorder nicht hin. Danke schon jetzt wieder für die Rückantworten.
Herzliche Grüße
Wolfgang

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellen mit ":" löschen.
14.10.2007 12:46:13
Chaos
Servus Wolfgang,
folgendes Makro löscht alle Zellen in Spalte C und E, die einen : enthalten und verschiebt den jeweiligen Bereich darunter nach oben:

Sub test()
Dim I As Long
For I = 25 To 5 Step -1
If Cells(I, 3).Value Like "*:*" Then
Cells(I, 3).ClearContents
Dim zeile As Long, letzte As Long
letzte = Range("C65536").End(xlUp).Row
zeile = Cells(I, 3).Row
Range("C" & zeile + 1 & ":C" & letzte).Cut Destination:=Cells(zeile, 3)
End If
Next I
Dim II As Long
For II = 25 To 5 Step -1
If Cells(II, 5).Value Like "*:*" Then
Cells(II, 5).ClearContents
Dim zeileII As Long, letzteII As Long
letzteII = Range("E65536").End(xlUp).Row
zeileII = Cells(II, 5).Row
Range("E" & zeileII + 1 & ":E" & letzteII).Cut Destination:=Cells(zeileII, 5)
End If
Next II
End Sub


Gruß
Chaos

Anzeige
AW: kleiner Fehler
14.10.2007 12:47:55
Chaos
Du musst statt For I = 25 und For II = 25 natürlich 26 schreiben.
Gruß
Chaos

AW: kleiner Fehler
14.10.2007 13:08:29
Wolfgang
Hallo Chaos,
zunächst herzlichen Dank für Deine schnelle Meldung und Ausarbeitungen.
Der Code löscht mir leider alles in den Bereichen, wenn in einer Zelle ein Doppelpunkt enthalten ist. Was müßte ich evtl. ändern?
Gruß - Wolfgang

AW: kleiner Fehler
14.10.2007 13:11:36
Chaos
Servus Wolfgang,
so hab ich es verstanden. Wenn Doppelpunkt, dann löschen. Was soll den genau gelöscht werden? Evtl. nur der Doppelpunkt.
Mach mal ein Beispiel, damit es keine Missverständnisse gibt.
z.B.: wer: wird zu wer, oder so ähnlich.
Gruß
Chaos

Anzeige
AW: kleiner Fehler
14.10.2007 13:19:00
Wolfgang
Hallo Chaos,
schön wäre in dem Moment nur die einzelne Zelle zu löschen, in der sich der Text mit dem Doppelpunkt befindet. Die anderen Zellen darunter sollen hochgeschoben werden, damit dann die Lücke wieder gefüllt ist. C8 enthält z.B. Text mit Doppelpunkt, dann sollte C8 gelöscht werden, C5:C7 bleiben , die anderen Zellen C9:C25 werden nach oben geschoben. Erneut herzlichen Dank
Gruß - Wolfgang

Autofilter
14.10.2007 13:20:00
{Boris}
Hi Wolfgang,
Spalte nach Doppelpunkt filtern, alle Filterzeilen markieren, Strg und - (Minus), Filter wieder entfernen, fertig. Ganz ohne VBA.
Grüße Boris

Anzeige
AW: kleiner Fehler
14.10.2007 13:40:00
Chaos
Servus Wolfgang,
genau das macht das Makro für alle Zellen mit ":" in diesem Bereich. Wenn ich das richtig verstehe, willst du beim ersten Treffer aus dem Makro aussteigen. Wenn dem so ist, dann füg in den Schleifen jeweils ein Exit For vor dem End if ein.
Gruß
Chaos

Danke Chaos - funktioniert.
14.10.2007 13:50:24
Wolfgang
Hallo Chaos,
recht herzlichen Dank, das war's genau. Funktioniert nun prima. Einen schönen Sonntag noch und alles Gute. Gruß - Wolfgang

AW: kleiner Fehler
14.10.2007 13:44:00
Chaos
Ach ja die Schleifenrichtung, solltetst du dann auch ändern:
Statt For I = 25 To 5 Step -1, schreib dann: For I = 5 To 25 Step 1
Gruß
Chaos

Anzeige
Beispiel ...
14.10.2007 13:46:29
Matthias
Hallo
Beispiel für C5:C25
Option Explicit

Sub ml()
Dim X As Long
For X = 25 To 5 Step -1
If Cells(X, 3).Value Like "*:*" Then
Cells(X, 3).Delete Shift:=xlUp
End If
Next
End Sub


Userbild

Hallo Matthias - eine Frage noch
14.10.2007 14:08:46
Wolfgang
Hallo Matthias,
auch Dir recht herzlichen Dank - ich habe Deinen Code ebenfalls getestet, er rennt super. Vielleicht noch eine mehr optische Frage: Ich habe den Bereich C5:C26 und E5:E26 mit weißem Hintergrund versehen. Wie könnte ich den Code ergänzen/ändern, damit quasi unten die Anzahl der gelöschten Zellen wieder eingfügt/drangehängt wird und der Hintergrund dieser Zellen dann auch wieder weiß ist ?. - Ist mir leider jetzt erst beim Testen aufgefallen. Danke schon jetzt und
Gruß - Wolfgang

Anzeige
das geht so ...
14.10.2007 14:49:00
Matthias
Hallo Wolfgang
Das realisierst Du mit einer weiteren Variablen.
Die zählst Du bei jeder Löschaktion um einen Zähler hoch
Option Explicit

Sub ml()
Dim X As Long, Y As Long, i As Long
For X = 25 To 5 Step -1
If Cells(X, 3).Value Like "*:*" Then
Y = Y + 1
Cells(X, 3).Delete Shift:=xlUp
End If
Next
MsgBox "geslöschte Zellen sind es " & Y
For i = 25 - Y To 25
Cells(i, 3).Interior.ColorIndex = 6 'Farbe anpassen
Next
End Sub


Beispiel: https://www.herber.de/bbs/user/46755.xls
Userbild

Anzeige
Danke Matthias, super
14.10.2007 14:58:00
Wolfgang
Hallo Matthias,
erneut recht herzlichen Dank für Deine Rückmeldung und die Ausarbeitungen. Das klappt super ! Schönen Sonntag noch und weiterhin alles Gute.
Gruß - Wolfgang

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige