Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zeilenumbruch in Zelle beachten

Zeilenumbruch in Zelle beachten
07.11.2016 15:19:47
Julian
Guten Tag liebes Forum,
ich lasse per VBA-Code nach einem bestimmten Wert Suchen (in Daten_FR), um dann die Spaltenzahl (in Auswertung_FR) auszugeben. Das funktioniert auch ganz gut. Es funktioniert allerdings nicht, wenn der gesuchte Wert mit einem Zeilenumbruch in der Zelle steht.
Daher meine Frage:
Was muss ich an meinem Code verändern, damit er auch Werte mit Zeilenumbruch findet?
Mein aktueller Code:
' Spaltennamen finden

Sub Spaltennamenfinden()
Set ab = Worksheets("Daten_FR").Rows("2").Columns("a:bb").Find(what:="Status")
i = ab.Column
Sheets("Auswertung_FR").Range("O4").Value = i
End Sub
Ich möchte also bspw. nach "Status (hier kommt der Zeilenumbruch) Verteiler1" suchen. Ein einfaches Leerzeichen funktioniert nicht.
Viele Dank für eure Hilfe :)
Julian

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilenumbruch in Zelle beachten
07.11.2016 15:22:58
Rudi
Hallo,
..., LookAt:=xlPart)
Gruß
Rudi
AW: Zeilenumbruch in Zelle beachten
07.11.2016 16:12:16
Julian
Hallo Rudi,
danke für deine schnelle Antwort. Ich habe den Befehl nun folgendermaßen eingepflegt:

Sub Spaltennamenfinden()
Set ab = Worksheets("Daten_FR").Rows("2").Columns("a:bb").Find(what:="Status Verteiler1",  _
LookAt:=xlPart)
i = ab.Column
Sheets("Auswertung_FR").Range("O4").Value = i
End Sub
Allerdings funktioniert es immer noch nicht. Folgende Fehlermeldung erscheint:
Userbild
Hast du, oder haben weitere Leser eventuell noch andere Lösungsvorschläge?
Gruß
Julian
Anzeige
AW: Zeilenumbruch in Zelle beachten
07.11.2016 17:03:37
Michael
Hi Julian,
dafür macht man nach einem .find üblicherweise eine Abfrage, ob der Wert überhaupt gefunden wurde...
Das alles ist etwas tricky: ich schlage vor, daß Du eine Leerzeile in Zeile 2 einfügst, die mit Formeln bestückst, in A2 etwa:
=WECHSELN(WECHSELN(A3;ZEICHEN(10);"");" ";"")

dann werden alle Umbrüche und Leerzeichen rausgeworfen. Diese neue Zeile 2 blendest Du dann aus...
Zum Suchen verwendest Du dann z.B.:
Option Explicit
Sub Spaltennamenfinden()
Dim ab As Range
Dim suchNach As String
suchNach = "Status Verteiler 1"
suchNach = Replace(suchNach, " ", "") ' alle Leerzeichen raus!
Set ab = Worksheets("Daten_FR").Rows("2"). _
Find(what:=suchNach, LookIn:=xlValues, LookAt:=xlPart)
If Not ab Is Nothing Then
MsgBox "Spalte Nr. " & ab.Column & " bzw. " & Split(ab.EntireColumn.Address(0, 0), ":")(0)
' Das Ding heißt "NAMEN" finden und nicht "Nummer" finden
' Deshalb hier beides...
Else
MsgBox suchNach & " nicht gefunden."
End If
End Sub
Als Datei zum Spielen: https://www.herber.de/bbs/user/109256.xlsm
Schöne Grüße,
Michael
Anzeige

337 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige