• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Engelse datum omzetten naar dag

Status
Niet open voor verdere reacties.

peter1980

Gebruiker
Lid geworden
29 dec 2010
Berichten
75
Hallo ik heb een aantal velden met de notering 08/21/2011 07:16 PM en 7-12-2011 15:38:00. Nu wordt de notering 7-12-2011 15:38:00 omgezet naar woensdag 7 december 2011 terwijl dit 12 Juli moet zijn. En de datum 08/21/2011 07:16 PM wordt niet geaccepteerd.

Hoe kan ik deze Engelse datums omzetten naar Dag 1 Maand Jaar?
 
Beste peter1980 ;)

Zet deze code in een module.
Daarna ALT + F8 en uitvoeren.

Code:
Sub tst()
sq = [C1:C100]
For i = 1 To UBound(sq)
sq(i, 1) = Format(sq(i, 1), "dd/mm/yyyy")
Next
[D2].Resize(UBound(sq)) = sq
End Sub
Zorg ervoor dat al je datums in kolom C staan.

Zie bestandje en druk op ALT+F8 en uitvoeren.

Groetjes Danny. :thumb:
 

Bijlagen

Laatst bewerkt:
Nice dat script werkt echt goed, alleen heb ik nu een aantal velden die niet automatische wordt omgezet naar een dag.
De helft van de velden krijgen netjes een dag mee, alleen de andere velden springen pas naar een dag als ik het veld aanklik.
 
Beste peter1980 ;)

Kan je soms een voorbeeldje hier plaatsen en aanduiden wat lukt en niet lukt ?

Groetjes Danny. :thumb:
 
Beste peter1980 ;)

En als je deze code gebruikt:

Code:
Sub tst()
sq = [C1:C100]
For i = 1 To UBound(sq)
sq(i, 1) = Format(sq(i, 1), "[B][COLOR="red"]dddd[/COLOR][/B] dd/mm/yyyy")
Next
[D2].Resize(UBound(sq)) = sq
End Sub

Groetjes Danny. :thumb:
 
hallo peter

je kan ook deze function gebruiken
Code:
Function ZetOm(D)
    If TypeName(D.Value) <> "String" Then
        ZetOm = (CDate(Format(D, "mm/dd/yyyy hh:mm:ss")))
    Else
        D = Replace(D, "/", "-")
        S1 = InStr(1, D, "-")
        S2 = InStr(S1 + 1, D, "-")
        D = Mid(D, S1 + 1, S2 - S1) & Left(D, S1) & Right(D, Len(D) - S2)
        ZetOm = CDate(D)
    End If
End Function

deze code maakt van een engelse notatie ingevoerde datum,
een exel datem
dwz een getal. je moet dus met celeigenschappen er een visuele datum van maken.
ik heb even een extra functie gemaakt om te zien vat voor type er in een cel staat.
het gaat eigenlijk om de groene kolom.

groet sylvester
voorbeeld :
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan