String in Date konvertieren

  • VB.NET

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von picoflop.

    String in Date konvertieren

    Hallo zusammen,

    folgendes Problem. Ich lese aus einer Zelle einen String ein, bspw. "19.01.09" Daraus möchte ich zwei weitere Strings generieren: "19.01.2009" und "01/2009" und diese wieder ausgeben. Welche Möglichkeiten habe ich? Danke vorab.

    Lg

    Das Thema wurde aus (dem) Hauptforum in dieses Forum verschoben (von Chrisber)

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Chrisber“ ()

    Priestaftw schrieb:

    Am besten mit Codebeispiel!?

    Request: Schubs Grundlagen!

    Mann! Wie schwer ist denn das? Es wurde dir doch schon das passende Stichwort genannt, welches durch eigene Anstrengungen problemlos zur Lösung führen würde!

    IchBinEinString="19.1.2009"
    IchBinEinDatum = Date.Parse(IchBinEinString)

    Für die Ausgabe im gewünschten Format brauchst du jetzt nur noch die entsprechenden Formatierungen im ToString des Datums vornehmen.
    Google rockt: msdn.microsoft.com/de-de/library/zdtaw1bw%28VS.80%29.aspx

    Also zb
    IchBinEinDatum.ToString("MM/yyyy")


    Programmieren heißt NICHT bei jeder Kleinigkeit zu sagen: "Gib mal Code!!". Man muss sich auch mal auf den A*sch setzen und seinen Brägen anstrengen!
    Danke für deine Antwort, auch wenn du recht pampig unterwegs bist.
    Ich hab selbst lang genug recherchiert und auch kollegen von mir gefragt. Das einfache formatieren in das Format "MM/yy" funktioniert nicht.

    Hier mein Code:

    VB.NET-Quellcode

    1. Dim akt_datum As String
    2. Dim akt_datum_2 As New DateTime


    VB.NET-Quellcode

    1. akt_datum = excelsheet.Cells(4, 11).Value
    2. If (IsDate(akt_datum) = True) Then _
    3. akt_datum_2 = DateTime.ParseExact(akt_datum, "MM/yy", Nothing)


    Falls noch jemandem was dazu einfällt - vielen Dank.

    Priestaftw schrieb:

    Das einfache formatieren in das Format "MM/yy" funktioniert nicht.

    Lass mich raten. Die Ausgabe ist 01.09 ?
    Da fragt man sich, woran das wohl liegen könnte ...

    VB.NET-Quellcode

    1. Dim d As Date = Date.Parse("19.1.2009")
    2. Debug.Print(d.ToString("MM/yyyy", System.Globalization.CultureInfo.InvariantCulture))