• 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.

Opgelost Geboortedatum sorteren zonder hulpkolommen

Dit topic is als opgelost gemarkeerd
Je kan deze bijv. deze formule gebruiken voor sorteren oudste-jongste:
Code:
=SORTEREN(A2:C9;1;1)
 
Misschien wat kort door de bocht, maar zou een tabel hierbij kunnen helpen?
 

Bijlagen

Jje kunt in de eerste rij toch gewoon een filter maken.
 
Allereerst dank voor jullie reacties.

AlexCEL: bij jouw formule is de bovenste vermelding 17/11, hetgeen niet klopt.
Peter59: hierbij geldt hetzelfde.

Sorteren en filter maken dus gebruik van de hulpkolommen.
Mijn VBA doet dat ook echter zoek ik een methode (liefst middels VBA) die de hulpkolommen niet nodig heeft.

Groet,
Trainers
 
Het is ook niet 17/11, het is 17/11/38.
Dan hoort die toch bovenaan.
 
Incorrect. Als je de geboorte data (verjaardagen) in een lijst zet komt 17/11 direct na 16/11.

Groet,
Trainers
 
Maar er staat toch niet 16/11 er staat 16/11/54, dat is toch heel wat anders.
 
Ik heb zo'n donkerbruin vermoeden dat TS op maand/dag wil sorteren 😂
 
Correct.
De uitkomst van mijn macro is dan ook:
Schermafbeelding 2026-09-25 182717.webp

Groet,
Trainers
 
Wow, dat is hem.
Ik had zo gauw nog niet aan Claude c.s. gedacht.
Dank je wel AHulpje. 👍

Groet,
Trainers
 
Zie #6: "echter zoek ik een methode (liefst middels VBA) die de hulpkolommen niet nodig heeft"
 
Dank je AHulpje.
Ik sluit het topic.

Groet,
Trainers
 
Om te zien wat er gebeurt in het bestand van AH de gegevens in kolom C, maar voor hetzelfde geld gewoon kolom A overschrijven.

Code:
Sub M_snb()
    sn = Cells(1).CurrentRegion
    
     With CreateObject("System.Collections.ArrayList")
       For Each it In sn
         If IsDate(it) Then .Add Format(it, "mm-dd_yyyy")
       Next
      
       .Sort
       st = .toarray()
    End With

    For j = 2 To UBound(sn)
        sn(j, 1) = CDate(Mid(st(j - 2), 4, 2) & "-" & Left(st(j - 2), 2) & "-" & Right(st(j - 2), 4))
    Next
   
    Cells(1, 3).Resize(UBound(sn)) = sn
End Sub
 
Complimenten snb.
Helaas ben jij wars van het gebruik van Option Explicit, terwijl mij altijd geleerd is dat je de variabelen moet declareren. Maar goed.

Jouw code werkt prima. Is het mogelijk om enige toelichting/uitleg te geven wat de verschillende commando's doen?
Bij voorbaat mijn dank.

Groet,
Trainers
 
Hier nog een formule-optie:
Code:
=SORTEREN.OP(A2:A9;MAAND(A2:A9);1;DAG(A2:A9);1)
 
Laatst bewerkt:
De formulue van @AlexCEL omgezet naar VBA.
Code:
Sub hsv()
 Range("a2", Cells(Rows.Count, 1).End(xlUp)).Name = "b"
 [b] = [sortby(b, Month(b), 1, Day(b), 1)]
End Sub
 
Terug
Bovenaan Onderaan