Avatar billede mlhave Nybegynder
18. marts 2007 - 21:16 Der er 11 kommentarer og
1 løsning

Sortering af fødselsdage

Jeg har en liste med fødselsdage i formatet dd-mm-åå og vil gerne have en sortering der viser rækkefølgen fødselsdage i år.

Sorteringen skal kunne laves ved hjælp af en makro, da jeg også har flere andre sortering jeg skal bruge i andre sammenhænge.
Avatar billede kol Nybegynder
18. marts 2007 - 22:11 #1
Du er nødt til at have årstal anført som 4-cifret værdi, dd-mm-åååå.
Hvis du har fødselsdage i kolonne A og navn i kolonne B, kunne makroen se sådan ud:

Sub Sorter()

    Range("A1:B5").Select
    Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub

Du må selvfølgelig selv rette celleangivelserne til.

Hilsen KOL
Avatar billede mlhave Nybegynder
19. marts 2007 - 14:40 #2
hej kol,

Din makro sortere efter alder, jeg vil gerne have en liste hvor række følge af fødselsdage i 2007 er angivet.

Hvis listen er:
01-12-1967
20-05-1975
01-01-1972

Skal listen sorteres til at være:
01-01-1972
20-05-1975
01-12-1967
Avatar billede excelent Ekspert
19. marts 2007 - 20:03 #3
Hvis kolonne til højre for dine datoer er fri

Sub Sorter()
r = Selection.Row: k = Selection.Column: a = Cells(r, k + 1).Address
x = Selection.Address
For Each d In Selection
d.Offset(0, 1) = DateSerial(Year(1900), Month(d), Day(d))
Next
Range(x).Select
Selection.Resize(Selection.Rows.Count, Selection.Columns.Count + 1).Select
Selection.Sort Key1:=Range(a), Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, _
MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
Range(x).Offset(0, 1).Select
Selection = "": Range("A1").Select
End Sub
Avatar billede mlhave Nybegynder
19. marts 2007 - 20:16 #4
Hej excelent,
Den kan jeg ikke få til at virke.
Hvor skal jeg stille mig?
Hvis du har et eksempel må du gerne sende det til: mlh (snabela) mlh (punktum) dk

Ib    21-12-1988
Ole    05-05-1982
Knud    12-08-1976
Per    16-04-1976
Søren    05-06-1977
frak    21-06-1972
Lise    12-02-1970
Gitte    24-04-1972
Per    27-11-1968
Jeppe    14-06-1975
Mike    27-07-1975
Ulla    03-07-1974
Jean    28-03-1983
Bjørn    26-09-1968
Kurt    03-07-1977
Peter    23-05-1978
Avatar billede excelent Ekspert
19. marts 2007 - 20:18 #5
skal lige høre om navne og dato står i hver sin kolonne ?
Avatar billede mlhave Nybegynder
19. marts 2007 - 20:23 #6
Det gør de og datoerne er (naturligvis) i datoformat, ikke bare tekst....
Avatar billede excelent Ekspert
19. marts 2007 - 20:25 #7
ok så skal koden lige rettes til, så den sorterer navnene med
vender tilbage
Avatar billede excelent Ekspert
19. marts 2007 - 20:30 #8
ok marker datoer og kør makro

Sub Sorter()
r = Selection.Row: k = Selection.Column: a = Cells(r, k + 1).Address
x = Selection.Address
For Each d In Selection
d.Offset(0, 1) = DateSerial(Year(1900), Month(d), Day(d))
Next
Range(x).Offset(0, -1).Select
Selection.Resize(Selection.Rows.Count, Selection.Columns.Count + 2).Select
Selection.Sort Key1:=Range(a), Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, _
MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
Range(x).Offset(0, 1).Select
Selection = "": Range("A1").Select
End Sub
Avatar billede mlhave Nybegynder
19. marts 2007 - 21:32 #9
Så må du hellere smide et svar :o)
Avatar billede excelent Ekspert
19. marts 2007 - 21:42 #10
er hermed gjort :-)
Avatar billede kol Nybegynder
19. marts 2007 - 22:06 #11
Hej mlhave,

du har ret, jeg havde ikke læst spørgsmålet korrekt.
Godt at excelent kom på banen med en løsning.

hilsen KOL
Avatar billede excelent Ekspert
21. marts 2007 - 17:01 #12
husk at lukke
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester