Registriert seit: 22.01.2018
Version(en): 2016
Hallo zusammen,
ich möchte nach einer Übereinstimmung zwischenTabelle1/Spalte C und dem Inhalt einer TextBox suchen. Das Problem ist, dass die Übereinstimmung nur gefunden wird wenn der Inhalt in der TextBox in einer Zeile steht. Sobald der Text in der TextBox mehrzeilig ist, wird keine Übereinstimmung gefunden, obwohl eine Übereinstimmung vorliegt.
For i = 1 To Tabelle1.Cells(Tabelle1.Rows.Count, 1).End(xlUp).Row
If Tabelle1.Cells(i, 3).Value = UF_Edit.TextBox1.Text Then
MsgBox "Es wurde eine Übereinstimmung gefunden"
Exit For
End If
Next i
Registriert seit: 10.07.2018
Version(en): 2013, 2016
Hallo,
ersetze doch mit Replace den Zeilenumbruch durch z.B. ein Leerzeichen.
BTW: Die Schleife ist nicht notwendig - wesentlich performanter ist die Search-Funktion (Cells.Find).
Registriert seit: 13.04.2014
Version(en): 365
28.08.2018, 11:03
(Dieser Beitrag wurde zuletzt bearbeitet: 28.08.2018, 11:04 von BoskoBiati.)
Hi,
ungetestet:
Code:
If Tabelle1.Cells(i, 3).Value = Application.WorksheetFunction.Clean(UF_Edit.TextBox1.Text)
Gruß
Edgar
Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Registriert seit: 17.08.2015
Version(en): 19
Hallo,
versuch mal so:
Code:
If Tabelle1.Cells(i, 3).Value =Replace( UF_Edit.TextBox1.Text, Chr(10), "") Then
Grüße aus Nürnberg
Armin
Ich benutze WIN 10 (64bit) und Office 19 (32bit)
Registriert seit: 22.01.2018
Version(en): 2016
Danke für die Antworten.
Die Quelle für den Text der TextBox steht in Spalte A. Wenn ich nun die Werte in Spalte A einzeilig schreibe, funktioniert die Suche.
Dann habe ich aber das Problem, dass die die Zeilenumbrüche nicht an den gewünschten Stellen in der TextBox sind. Die Zeilenumbrüche lasse ich automatisch über Me.TextBox1.Multiline = True erzeugen.
Registriert seit: 10.07.2018
Version(en): 2013, 2016
Zitat:Die Quelle für den Text der TextBox steht in Spalte A.
Was denn jetzt? Eine Text-Box ist normalerweise für die Eingabe von Text und nicht für die Ausgabe. Wenn du aber dem User die Möglichkeit den Inhalt der Zelle über die Textbox zu ändern geben willst, dann weißt du doch zur Laufzeit, aus welcher Zelle der Text stammt. Warum suchst du dann danach?
Ich verstehe nicht mehr so ganz, was du eigentlich genau vorhast.
Registriert seit: 22.01.2018
Version(en): 2016
Die UserForm besteht aus zwei TextBoxen und einem CommandButton. In der ersten TextBox steht der aktuelle Wert. In der zweiten soll der Anwender den neuen Wert eingeben. Nach drücken des CommandButton soll in Tabelle1 nach dem Inhalt der TextBox1 gesucht werden und dieser soll durch den Inhalt von TextBox 2 ersetzt werden.
Registriert seit: 10.07.2018
Version(en): 2013, 2016
Verstanden - ich würde trotzdem nicht zwei Textboxen nehmen, sondern die erste durch z.B. eine Listbox ersetzen.
Wie kommt denn dein Wert in die erste Textbox - da musst du ja irgendwie wissen, aus welcher Zelle du das ganze auslesen möchtest. Somit brauchst du nicht mehr nach der Zelle zu suchen, sondern weißt in welche Zelle du den neuen Wert schreiben musst.