Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: omron2003 am September 23, 2016, 11:34:10

Titel: Wert aus Textfeld splitten
Beitrag von: omron2003 am September 23, 2016, 11:34:10
Hallo Forum,

per Barcode Scanner fülle ich Textfeld1 wie folgt einem Wert,
91FP345678105A123456783100001200
die rot markierten Werte sind immer gleich und scheinbar Platzhalter,
ich benötige den Wert nach dem Platzhalter 91 in Textfeld2 und den Wert zwischen Platzhalter 10 und 3100 in Textfeld3.
Diese Werte sind variabel in der Länge. Wie könnte ich das in VBA erstellen z.B. vor Update von Textfeld1 oder per Klick auf eine Schaltfläche?

Danke im Voraus
Omron2003
Titel: Re: Wert aus Textfeld splitten
Beitrag von: MzKlMu am September 23, 2016, 11:55:46
Hallo,
sind 91, 10 und 3100 immer gleich ?
Titel: Re: Wert aus Textfeld splitten
Beitrag von: omron2003 am September 23, 2016, 11:59:44
Ja diese Wert sind immer gleich.
Titel: Re: Wert aus Textfeld splitten
Beitrag von: MzKlMu am September 23, 2016, 12:08:15
Hallo,
für Textfeld2:
=Teil([Textfeld];3;InStr([Textfeld];"10")-3)
Für Textfeld3:
=Teil([Textfeld];InStr([Textfeld];"10")+2;InStr([Textfeld];"3100")-13)
Jeweils als Steuerelementinhalt von Formularfeldern.
Titel: Re: Wert aus Textfeld splitten
Beitrag von: omron2003 am September 23, 2016, 12:15:07
Hallo,
perfekt, funktioniert bestens.

Nochmals besten Dank für die schnelle Hilfe.

Gruß
Omron2003
Titel: Re: Wert aus Textfeld splitten
Beitrag von: bahasu am September 23, 2016, 12:52:16
Hallo,

Zitat
=Teil([Textfeld];3;InStr([Textfeld];"10")-3)

ist ausgeschlossen, dass z.B. 91FP310610105A123456783100001200 oder irgendeine andere Konstellation mit einer oder mehreren "10" vor dem Trennzeichen "10" vorliegen kann?

Harald
Titel: Re: Wert aus Textfeld splitten
Beitrag von: omron2003 am September 23, 2016, 14:10:38
doch es könnten folgende Möglichkeiten vorkommen,
FP110210
FP110310
es steht aber fest das die Kombinationen zwischen 91 und 10 immer 8 Stellen haben.
91"fester Wert mit 8 Stellen" 10 "variabler Wert zwischen 3 und 10 Stellen"3100

Omron2003
Titel: Re: Wert aus Textfeld splitten
Beitrag von: MzKlMu am September 23, 2016, 14:25:48
Hallo,
dann kannst Du wie folgt etwas vereinfachen:
=Teil([Textfeld];3;8)
=Teil([textfeld];12;InStr([Textfeld];"3100")-12)


Die 3100 darf zusammenhängend vor der jetzigen Position nicht vorkommen.