Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1640to1644
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
Leerzeichen in "if like"
27.08.2018 13:05:31
Felix
Guten Tag Excelexperten,
ich möchte gerne in einer Zelle abfragen, ob dort eine gewisse Struktur des Inhalts vorliegt. Ich meine damit nicht das Excel-Zellenformat, sondern eine gewisses Nummernformat.
In der ersten Zelle können Nummern mit folgenden Formaten auftreten:
##-####-####
?# #### ### ###
?#.#### ### ###
Das Hauptproblem sind hier die Leerzeichen, soweit konnte ich das schon feststellen.
In der zweiten Zelle treten nur Zahlen auf, 10 Stellen.
Da kann ich einfach abfragen mit

If Sheets("Tabelle1").Cell(3, 4).Value Like "##########" Then

und das funktioniert auch super.
Aber wie funktioniert das mit Leerzeichen?
(Eine Lösung, falls möglich, über Datenüberprüfung wäre auch vollkommen ok.)
Gruß, Felix

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Leerzeichen in "if like"
27.08.2018 14:05:04
ChrisL
Hi Felix
Wenn du verschiedene Pattern/Muster ganz genau prüfen willst, dann wäre vermutlich "RegEx" die Lösung.
Vielleicht tut es aber schon diese Variante:
Sub t()
Dim s As String
s = "55-5555 5555"
's = Sheets("Tabelle1").Cell(3, 4)
s = Replace(s, " ", "")
s = Replace(s, ".", "")
s = Replace(s, "-", "")
MsgBox IsNumeric(s)
End Sub

cu
Chris
AW: Leerzeichen in "if like"
27.08.2018 15:32:05
Felix
Hallo Chris,
ich weiß gerade echt nicht wo ich deinen Code einfügen soll. Meine andere Prüfung läuft über ein Worksheet_Change mit der Target.Address.
Wie würde ich es mit RegEx realisieren? Habe davon noch nie gehört.
Gruß, Felix
Anzeige
AW: Leerzeichen in "if like"
27.08.2018 15:41:10
ChrisL
Hi Felix
Der Code von vorhin als Formel (zwecks Gültigkeitsprüfung):
=ISTZAHL(WECHSELN(WECHSELN(WECHSELN(A1;" ";"");".";"");"-";"")*1)
cu
Chris
AW: Leerzeichen in "if like"
27.08.2018 19:56:54
ChrisL
Hi Felix
Z.B. hier war kürzlich was zu Regex
https://www.herber.de/forum/messages/1640911.html
Die Frage ist, wie genau dein Regelwerk sein soll. Mit der Formel werden nur die Zeichen entfernt und auf Zahl geprüft.
Sonst müsstest du mal eine Datei inkl. Makro mit etwas mehr Beispielen posten.
cu
Chris
AW: Leerzeichen in "if like"
28.08.2018 08:49:06
Felix
Hallo Chris,
Danke für die Beiträge.
Anbei mal eine Datei mit meinen Vorstellungen. https://www.herber.de/bbs/user/123608.xlsm
Der Code für NummerB ist bereits fertig. Sowas in der Art hätte ich auch gerne für NummerA.
Deine Formel für die Gültigkeitsüberprüfung funktioniert gut, nur werden mir da natürlich Nummern mit einem führenden Buchstaben als falsch ausgegeben.
In der Datei befinden sich alle möglichen Formate für NummerA und jeweils ein Beispiel.
Wichtig ist mir vor allem, dass NummerA und B nicht in den Feldern vertauscht werden können. Später soll ein Scanner zum Einsatz kommen, der beide Nummern ausliest (nacheinander, manuell anscannen). Falls nun versehentlich der falsche Barcode gescannt wird, soll eine Fehlermeldung erscheinen und wie im Code für B zurückgesprungen werden auf die Zelle zur erneuten Eingabe.
Gruß, Felix
Anzeige
AW: Leerzeichen in "if like"
28.08.2018 10:19:20
ChrisL
Hi Felix
Teste mal...
=UND(ISTZAHL(RECHTS(WECHSELN(WECHSELN(WECHSELN(E3;" ";"");".";"");"-";"");10)*1); LÄNGE(WECHSELN(WECHSELN(WECHSELN(E3;" ";"");".";"");"-";""))LÄNGE(E3))
cu
Chris
AW: Leerzeichen in "if like"
28.08.2018 10:39:11
Felix
Hallo Chris,
vielen Dank! Das funktioniert wunderbar!
Grüße
Felix
AW: Leerzeichen in "if like"
28.08.2018 12:38:22
Daniel
Hi
warum sollten Leerzeichen ein Problem sein?
 If Sheets("Tabelle1").Cell(3, 4).Value Like "?# #### ### ###" Then

sollte genauso gut funktionieren.
wenns mehrere varianten gibt, mit OR verknüpfen:
If Sheets("Tabelle1").Cell(3, 4).Value Like "##-####-####" OR _
Sheets("Tabelle1").Cell(3, 4).Value Like "?# #### ### ###" OR _
Sheets("Tabelle1").Cell(3, 4).Value Like "?#.#### ### ###" Then
wenn die Daten aus einem anderen System kommen, wäre ggf zu prüfen, ob tatsächlich das Leerzeichen (ASCII-Code 32) oder nicht doch das geschützte Leerzeichen (ASCII-Code 160) verwendet wird.
Gruß Daniel
Anzeige
AW: Leerzeichen in "if like"
28.08.2018 12:58:55
ChrisL
Hi
Danke. Definitiv die besser Lösung.
(Cell müsste man noch in Cells ändern)
cu
Chris
AW: Leerzeichen in "if like"
29.08.2018 14:19:26
Felix
Hallo Daniel,
ich habe es so schon probiert im Code aber es hat nicht funktioniert. Die Nummern werden per Hand bzw per Scanner eingelesen. Ich weiß ehrlich gesagt nicht was für eine "Art" Leerzeichen das ist.
Die Lösung über die Gültigkeitsprüfung ist jetzt bei mir im Dokument drin und wird es denke ich mal auch bleiben.
Danke dir dennoch :)
Gruß, Felix
AW: Leerzeichen in "if like"
29.08.2018 18:01:48
ChrisL
Hi Felix
Falls dich doch noch die Neugier packt ;)
=ZEICHEN()
https://www.online-excel.de/excel/singsel.php?f=175
cu
Chris
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige