Jeg har en masse datoer, der er konverteret til en tekst således "27.11.96" Det vil jeg meget gerne have konverteret tilbage til en dato således: "27-11-1996".
Det lykkes ikke, når jeg bare ændre på "tal-formatet" i start-side-fanen, så tænker at der måske skal bruge en kode eller lignende, der bytter "." ud med "-"?
I bund og grund vil jeg gerne kende antal år fra fødsel (udfra CPR) til en given dato (angivet som tekst, f.eks. "27.11.96"), så hvis nogen kan lave en hel kode til det, vil jeg blive meget taknemmelig.
Dim CPR_Old As String Dim CPR_New As String Dim DD As String Dim MM As String Dim YY As String Dim MyA As Long
WBL = ActiveSheet.UsedRange.Rows.Count
For MyA = 1 To WBL CPR_Old = Cells(MyA, 1).Value ' 1 tallet i parentesen henviser til hvilken kolonne tallet der skal ændres står i. Her kolonne A) DD = Mid(CPR_Old, 1, 2) ' 1 tallet henviser til positionen i tallet den skal begynde ved, her første tal og derefter tag to tal) MM = Mid(CPR_Old, 4, 2) YY = Mid(CPR_Old, 7, 2) CPR_New = DD & "-" & MM & "-" & YY Cells(MyA, 1).Offset.Value = CPR_New ' Her overskrives det gamle tal med det nye. Next MyA Cells(MyA, 1).Select Selection.NumberFormat = "dd-mm-yy;@" 'Her ændres cellen til datoformat
End Sub
Hvis du behøver hjælp til at regne alderen ud, skal du først finde ud af om nogle er over 100 år, da det ellers giver problemer i kodningen/udregningen. Det er ikke helt let, da CPR ikke umiddelbart giver et hint om man er født i 19xx eller 20xx mig bekendt.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.