Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zellinhalte ab erstem Leerzeichen löschen

Zellinhalte ab erstem Leerzeichen löschen
Kai
Hi,
wie kann ich den per Makro eine Spalte H bearbeiten und dort alle Inhalte , die in einer Zelle ab dem ersten Leerzeichen kommen, löschen, Wenn der inhalt mit "A" beginnt
Beispiel:
aus "A blablabla" soll "A" werden
aus "Antwort 5" soll "Antwort" werden
Aber wie gesagt, nur, wenn der INhalt mit "A" gebint.
Danke mal für alle Tipps
Kai
AW: Zellinhalte ab erstem Leerzeichen löschen
11.09.2009 13:03:11
David
Hallo Kai,
so:
Sub sauber()
For i = 1 To Range("H65500").End(xlUp).Row
Pos = InStr(Cells(i, 8), " ")
If Not Pos = 0 Then Cells(i, 8) = Left(Cells(i, 8), Pos - 1)
Next
End Sub
Rückmeldung wäre nett.
Gruß
David
AW: Zellinhalte ab erstem Leerzeichen löschen
11.09.2009 13:22:03
David
Hallo Kai.
Hab das mit dem A ganz vergessen:
Sub sauber()
For i = 1 To Range("H65500").End(xlUp).Row
If Left(Cells(i, 8), 1) = "A" Or Left(Cells(i, 8), 1) = "a" Then
Pos = InStr(Cells(i, 8), " ")
If Not Pos = 0 Then Cells(i, 8) = Left(Cells(i, 8), Pos - 1)
End If
Next
End Sub
Gruß
David
Anzeige
AW: Zellinhalte ab erstem Leerzeichen löschen
11.09.2009 13:23:19
JogyB
Hi.
Da fehlt die Überprüfung des ersten Zeichens.
Außerdem macht das nicht die ganze Spalte, sondern läßt die letzten 36 aus - ist zwar selten relevant, aber man weiß ja nie. Und in Excel 2007 sieht das dann gleich nochmal anders aus.
Gruss, Jogy
AW: Zellinhalte ab erstem Leerzeichen löschen
11.09.2009 13:32:42
David
Hallo Jogy,
das mit dem ersten Zeichen hab ich schon korrigiert.
Ich gehe mal davon aus, dass die letzten Zeilen so selten vorkommen, dass dies in 99,999999% der Fälle irrelevant ist. Ich habe mir halt nie die genaue Zahl gemerkt, weil es in meiner Praxis bisher noch NIE notwendig war.
Und Excel 2007 war hier nicht gegeben, abgesehen davon: ob du dann da 65500 oder 65536 drin stehen hast, wäre eh egal, weil beides nicht ausreichend.
Gruß
David
Anzeige
AW: Zellinhalte ab erstem Leerzeichen löschen
11.09.2009 13:55:43
JogyB
Hi.
Das Zauberwort heißt rows.count
Gruß, Jogy
AW: Zellinhalte ab erstem Leerzeichen löschen
11.09.2009 14:10:23
David
Zu Mittag heute einen Teller Perfektionismus gegessen? ;-)
Ist doch egal, die Lösung passt und damit ist gut.
Gruß
David
Danke Euch beiden, die Lösungen passen beide..
11.09.2009 14:16:36
Kai
HI,
vielen Dank dafür, es funktionieren beide Lösungen . Besten Danke. Hat mir geholfen.
Gruss Kai
AW: Zellinhalte ab erstem Leerzeichen löschen
11.09.2009 14:31:35
JogyB
Den gibt's bei mir gleich zum Frühstück ;)
Gruss, Jogy
AW: Zellinhalte ab erstem Leerzeichen löschen
11.09.2009 13:13:16
JogyB
Hi.
Sub loescheAbLeerzeichen()
Dim zeiLe As Long
Const spalte = 8 'H
Application.ScreenUpdating = False
With ActiveSheet
On Error Resume Next
For zeiLe = 1 To IIf(IsEmpty(.Cells(Rows.Count, spalte)), .Cells(Rows.Count, spalte). _
End(xlUp).Row, Rows.Count)
If Left(.Cells(zeiLe, spalte).Value, 1) = "A" Then
' Wenn kein Leerzeichen, dann gibt das einen Fehler - ignorieren
' Daher das On error resume next weiter oben
.Cells(zeiLe, spalte).Value = _
Left(.Cells(zeiLe, spalte).Value, InStr(.Cells(zeiLe, spalte).Value, " ") -  _
1)
End If
Next
On Error GoTo 0
End With
Application.ScreenUpdating = True
End Sub
Geht jetzt nur mit "A" am Anfang, wenn es mit "a" auch gehen soll, dann erstze
If Left(.Cells(zeiLe, spalte).Value, 1) = "A" Then
durch
If UCase(Left(.Cells(zeiLe, spalte).Value, 1)) = "A" Then
Gruss, Jogy
Anzeige

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige