xaero1982
Goto Top

VBA String Splitten ohne Delimiter

Moin,

alle guten Dinge sind drei zu Access/VBA face-smile

Nun noch eine Sache:

Ich hab ein Datumsfeld, aber das Datum soll OHNE Punkte eingegeben werden können, zb. 200111

Das ist natürlich nicht Datumsfeldkonform, also möchte ich das Datum nach der Eingabe in ein Datumskonformes umwandeln.

Sprich, der String soll in 3 Teile geteilt werden:

20
01
11

Dazwischen sollen dann Punkte eingefügt werden und das wieder in das Datumsfeld geschrieben werden.

Jemand ne Idee wie ich das umsetzen kann?

Split scheint ja nur mit Delimittern zu arbeiten, aber ich hab da ja keine ... face-smile

VG und Thx

Content-Key: 159203

Url: https://administrator.de/contentid/159203

Printed on: April 23, 2024 at 19:04 o'clock

Member: bastla
bastla Jan 22, 2011 at 13:02:57 (UTC)
Goto Top
Hallo Xaero1982!

Abgesehen davon, dass es auch "Left()" und "Right()" gäbe, kommst Du ganz einfach mit "Mid()" durch ...

Grüße
bastla
Mitglied: 76109
76109 Jan 22, 2011 at 13:03:02 (UTC)
Goto Top
Hallo Xaero1982!

Meinst Du sowas:
    MeinDatum = "200111"  
    
    Datum = DateSerial(Right(MeinDatum, 2), Mid(MeinDatum, 3, 2), Left(MeinDatum, 2))

    MsgBox Datum

Gruß Dieter

[edit] bastla war wieder 5 Sekunden schnellerface-wink [/edit]
Member: bastla
bastla Jan 22, 2011 at 13:10:35 (UTC)
Goto Top
@Dieter
[edit] bastla war wieder 5 Sekunden schneller;--) [/edit]
... aber nur, weil ich Xaero1982 auch noch Gelegenheit zu etwas eigener Leistung lassen wollte ...

BTW finde ich es sehr optimistisch, einfach davon auszugehen, dass Benutzer auch wirklich eingeben, was sie sollen ... face-wink

Grüße
bastla
Mitglied: 76109
76109 Jan 22, 2011 at 13:18:37 (UTC)
Goto Top
@bastla
Zitat von @bastla:
BTW finde ich es sehr optimistisch, anzunehmen, dass Benutzer auch wirklich eingeben, was sie sollen ... face-wink
Sehe ich auch so, aber ich vermute mal, dass die Werte aus einer DB-Abfrage kommen (vorhergehender Beitrag)? Ansonsten empfinde ich es als aüßerst bedenklichface-wink

Gruß Dieter
Member: Xaero1982
Xaero1982 Jan 23, 2011 at 19:01:17 (UTC)
Goto Top
Hi,

also ich hab nun eine andere Lösung gefunden über das Eingabeformat von Access.

00" "00" "9999;0;_  

Nun kann ich zwar nur noch Daten ohne . eingeben, aber immerhin im Format

ttmm
ttmmjj
ttmmjjjj

Wer Punkte eingeben will bekommt nen Fehler.

So genug zu dem Thema mit der DB - alle Bitten umgesetzt und getestet face-smile

VG und Thx!