Office: (Office 2013) Datumsformat per VBA ändern

Helfe beim Thema Datumsformat per VBA ändern in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo, ich importiere per VBA Daten aus einer Arbeitsmappe in meine aktuelle Arbeitsmappe. In den kopierten Daten befindet sich eine Spalte mit... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von PawelPopolski, 24. Mai 2018.

  1. Datumsformat per VBA ändern


    Hallo,

    ich importiere per VBA Daten aus einer Arbeitsmappe in meine aktuelle Arbeitsmappe. In den kopierten Daten befindet sich eine Spalte mit Datumsangaben. Die Datumsangabe weisen ein etwas unübliches Format auf (01.Jan.2018, 05.May.2018, 10.Oct.2017 etc.). Schaue ich mir die Formatierung der Zelle an steht dort auch Standard und nicht Datum.

    Wenn ich die Datumsangaben mit 1 multipliziere, erhalte ich zumindest für die Monate, in denen englische und deutsche Abkürzung identisch sind, eine Zahl, die ich wieder in ein Datum wandeln könnte. Die andern Monate (Mar, May, Oct, Dec) fallen leider raus.

    Als Ergebnis benötige ich aber später wieder die englischen Kurzbezeichnungen der Monate.

    Lange Rede lange Frage:

    Weiss jemand wie ich (am Besten schon beim Kopieren der Daten per VBA) das o.g. Datumsformat so manipulieren kann, dass es am Ende die Form DD. MMM YYYY mit den englischen Monatsabkürzungen aufweist und auch von der deutschen Excelversion als Datum erkannt wird?

    :)
     
    PawelPopolski, 24. Mai 2018
    #1
  2. Hajo_Zi
    Hajo_Zi Erfahrener User
    Halo Pawel,

    es ist kein Zahl (Datum) sondern Text. Mit Multiplikation mit 1 wird es eine Zahl.
     
    Hajo_Zi, 26. Mai 2018
    #2
  3. OfficeUser Neuer User
    Moin!
    Mal ein wenig Grundlagenwissen:
    Um ein echtes Datum in Deinem gewünschten Format zu erhalten, musst Du Dich an [$-409] halten (siehe Zeile 4).

     JK
    104.01.201728.12.2016
    204. Jan 201728. Dec 2016
    342739#WERT!
    404. Jan 201728. Dec 2016
    504.01.201728.12.2016
    ZelleFormatWert
    J1TT.MM.JJJJ04.01.2017
    K1TT.MM.JJJJ28.12.2016
    J4[$-409]TT. MMM JJJJ04.01.2017
    K4[$-409]TT. MMM JJJJ28.12.2016
    J5TT.MM.JJJJ04.01.2017
    K5TT.MM.JJJJ28.12.2016
    ZelleFormel
    K1=J1-7
    J2=TEXT(J1;"[$-409]TT. MMM JJJJ")
    K2=TEXT(K1;"[$-409]TT. MMM JJJJ")
    J3=--J2
    K3=--K2
    J4=J1
    K4=K1
    J5=--J4
    K5=--K4
    Gruß Ralf
     
    OfficeUser, 26. Mai 2018
    #3
  4. Datumsformat per VBA ändern

    Moin Pawel,
    ich verwende kein VBA zum einlesen derartiger Daten sondern das Add-In Power Query. Da ändere ich nach dem Import der Daten den Datentyp der Spalte auf Datum und PQ ist schlau genug, mir ohne Rückfrage ein deutsches Datum daraus zu machen.-
     
    Drogist, 26. Mai 2018
    #4
  5. Moin Günther!
    Wollte ich dem TE auch zunächst empfehlen, aber er schreibt ja ausdrücklich:
    Deshalb mein Hinweis auf das Zahlenformat [$-409].
    Licht ins Dunkle bringt imo ohnehin nur eine kleine Import-Datei.
    Hajo hat wohl Recht, dass es sich um Text handelt, der
    • zunächst in ein echtes Datum umgewandelt werden müsste
    • und danach mit dem obigen Zahlenformat versehen werden muss.
    Ich bastel mal etwas mit WECHSELN() oder auch per UDF

    Gruß Ralf
     
    RPP63, 26. Mai 2018
    #5
  6. Hallo zusammen,

    danke für die Hilfe. hajo hatte natürlich Recht. Es handelt sich um einen Text.

    Bevor ihr euch jetzt weiter bemüht, ich habe eine Lösung gefunden. In der Fragestellung ist wohl nicht klar rübergekommen, dass ich das Ganze per VBA lösen muss.

    Hier meine Lösung:
    Code:
    Ich übergebe den "Datumstext" an die Funktion, zerlege ihn, suche in dem Array nach der Position des Monats und setze das Ganze am Ende wieder als Datum zusammen.

    Vielleicht kennt jemand eine einfachere Lösung (immer her damit :-)). Diese funktioniert auf jeden Fall :-).

    Mein Hinweis mit den Monatsnamen war Blödsinn, weil das für die weitere Auswertung nicht nötig ist. Da habe ich mich selbst in die Ecke manövriert. Manchmal denkt man einfach zu kompliziert.
     
    PawelPopolski, 26. Mai 2018
    #6
  7. Da ich schon dran war, hier die Lösung mit dem gewünschten echten Datum in englischer Schreibweise:
    Modul Modul1
    Gruß Ralf
     
    RPP63, 26. Mai 2018
    #7
  8. Datumsformat per VBA ändern

    Die hat Dir Drogist genannt.
    Wenn Du "nur" die Umwandlung in ein Datum wünscht, nutze PowerQuery.
    (ohne jegliche Eingriffe wird das Datum umgewandelt)
     
    Zuletzt von einem Moderator bearbeitet: 12. Januar 2021
    RPP63, 26. Mai 2018
    #8
  9. OfficeUser Neuer User
    Und abschließend:
    Für die (ausschließliche) Datumsumwandlung brauchst Du sicherlich kein VBA (UDF), für alles reicht auch eine kurze Formel, die alle Monate abdeckt:
     AB
    101.Jan.201701.01.2017
    205.May.201805.05.2018
    317.Sep.201517.09.2015
    412.Dec.201412.12.2014
    515.Jun.200115.06.2001
    618.Oct.201518.10.2015
    ZelleFormel
    B1=--WECHSELN(WECHSELN(WECHSELN(WECHSELN(A1;"Mar";3);"May";5);"Oct";10);"Dec";12)
     
    OfficeUser, 26. Mai 2018
    #9
Thema:

Datumsformat per VBA ändern

Die Seite wird geladen...
  1. Datumsformat per VBA ändern - Similar Threads - Datumsformat VBA ändern

  2. Leider falsches Datumsformat - sortieren möglich?

    in Microsoft Excel Hilfe
    Leider falsches Datumsformat - sortieren möglich?: Guten Morgen. Ich habe eine ellenlange Liste mit Geburtstagen. Eigentlich ist es ja einfach, diese von 1.Jan bis 31.Dez zu sortieren. Leider fehlt mir - das Jahr - die richtige Formatierung -...
  3. Erbitte komplizierte Formel Wenn,dann oder wenn dies, dann

    in Microsoft Excel Hilfe
    Erbitte komplizierte Formel Wenn,dann oder wenn dies, dann: Hallo liebe Wissende, folgende 3 Probleme schaffe ich, als Laie, auch mit Hilfe des Internets nicht zu lösen. Mir wird monatlich eine csv-Datei mit folgenden Daten zur Verfügung gestellt. Ich...
  4. Datumsformat in Englisch

    in Microsoft Excel Hilfe
    Datumsformat in Englisch: Hallo Forum, ich krieg das irgendwie nicht hin und hoffe auf eure Hilfe Also Ich möchte von einem Datum nur die Monate anzeigen, aber in englisch Kein Problem, wenn man im Zahlenformat [$-409]MMM...
  5. Datumsformat mittels VBA Textbox festlegen

    in Microsoft Excel Hilfe
    Datumsformat mittels VBA Textbox festlegen: Guten Tag in die Runde. Bin mal wieder auf der Suche nach einer Lösung und bitte um Unterstützung. In der Textbox 8, 9, 10, 11 soll entsprechend das Datum bei der Eingabe formatiert werden. Ich...
  6. Datumsformat mit VBA ändern

    in Microsoft Excel Hilfe
    Datumsformat mit VBA ändern: Hallo, ich habe in Excel ein Formular in das ein Datum im Format "dd.mm.yy" (strDatum) eingegeben wird. Diesen Wert weise ich einer Variablen zu und mache damit Abfragen. Jetzt habe ich aber eine...
  7. Standardformat umwandeln von z.B. 2/20/2018 in Datumsformat 20.02.218

    in Microsoft Excel Hilfe
    Standardformat umwandeln von z.B. 2/20/2018 in Datumsformat 20.02.218: Hallo, ich habe eine Spalte, in der stehen Datumsformate wie z.B. 02.11.2018 aber leider auch Standardformate, die ein Datum z.B. in der Form 2/20/2018 beschreiben. Gemeint ist aber als Datum der...
  8. fortlaufendes Datum in 12 Arbeitsblättern Januar-Dezember Excel 2003 ohne VBA

    in Microsoft Excel Hilfe
    fortlaufendes Datum in 12 Arbeitsblättern Januar-Dezember Excel 2003 ohne VBA: Hallo zusammen, ich entwerfe gerade einen Arbeitsplan der aus 12 Arbeitsblättern besteht, für jedes Blatt ein Monat. Die Arbeitsblätter (Register unten sollen Januar, Februar, März usw. heissen....
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden