Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Wert aus Feld in zwei Felder splitten

Begonnen von omron2003, April 13, 2017, 12:40:10

⏪ vorheriges - nächstes ⏩

omron2003

Hallo Forum,
ich möchte in einer Abfrage den wert einen Feldes (Feldname: Format) in zwei wetere Felder aufteilen (Feld1: Laenge, Feld2: Breite).
Die werte im Feld Format sehen wie folgt aus:
123X123
456X456
789X1234
1432X142
Ich habe es schon wie folgt versucht:
Laenge: Teil(Links([Format];InStrRev([Format];"X")-1);1)
da funktioniert wenn vor dem X 3 Stellen sind, bei 4 Stellen wird die 4 Stelle wird abgeschnitten.

Gibt es noch eine andere Möglichkeit den String zu zerlegen?
Wie gesagt es können 3 aber auch 4 Stellen vor dem X oder nach dem X vorkommen.

Besten Dank im Voraus
Omron

MzKlMu

Hallo,
Zitatda funktioniert wenn vor dem X 3 Stellen sind, bei 4 Stellen wird die 4 Stelle wird abgeschnitten.
Nein, die Formel ist korrekt, da wird nichts abgeschnitten.
Siehe Bild mit Deiner Formel.

PS:
Da Format auch eine VBA/SQL Funktion ist, solltest Du das Feld umbenennen.
Gruß Klaus

PhilS

Zitat von: omron2003 am April 13, 2017, 12:40:10
Laenge: Teil(Links([Format];InStrRev([Format];"X")-1);1)
da funktioniert wenn vor dem X 3 Stellen sind, bei 4 Stellen wird die 4 Stelle wird abgeschnitten.
Das solltest du nochmal genau überprüfen. Davon abgesehen, dass die Teil-Funktion hier komplett überflüssig ist, ist dein Code ist korrekt und funktioniert unabhängig von der Anzahl der Stellen.
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

omron2003

Sorry habe mich vertan,
stimmt die Formel funktioniert bei Links vom X was ich nicht gebacken bekomme ist die Formel rechts vom X so zu gestalten das das Ergebnis stimmt.

Gruß
Omron

MzKlMu

Hallo,
da brauchst Du dann Teil dazu.
Breite: Teil([Format];InStr([Format];"X")+1)
Und hier noch für die Länge:
Laenge: Links([Format];InStr([Format];"X")-1)
Und InStrRev ist hier natürlich auch nicht notwendig.

Und benenne das Feld Format um.
Gruß Klaus