Ik vermoed dat je een beetje te enthousiast bent geweest, en iets teveel hebt gedaan
De functie zoals ik 'm heb gepost is prima, en daar hoef je geen letter aan te veranderen. Da's wel zo makkelijk
Wat je wel moet doen: op de plek waar je de code wilt gebruiken, een <Bij klikken> gebeurtenis maken. Daarvoor heb ik twee voorbeeldjes gegeven, namelijk een veld [Voornaam] met in de koptekst een label [lblVoornaam], en een veld [Achternaam], waarvan het label [lblAchternaam] heet. Deze labels hebben een gebeurtenis gekregen, zodat, als je er op klikt, een actie wordt uitgevoerd. Namelijk:
fSort Me.Form.Name, "Voornaam" dan wel fSort Me.Form.Name, "Achternaam".
Zoals je ziet, bestaat de actieregel uit twee elementen. Je roept de Functie aan (met fSort) en je geeft twee parameters mee: de naam van het huidige formulier (met Me.Form.Name) en de naam van het tabelveld waarop je wilt sorteren. Bij voornaam sorteer je op het veld Voornaam, bij Achternaam uiteraard op Achternaam.
In de functie worden formuliernaam en veldnaam vervolgens weer benoemd:
Function fSort(frmName As String, fldName As String)
De eerste waarde wordt toegewezen aan de variabele frmName (en is dus de formuliernaam die je met Me.Form.Name hebt meegegeven); de tweede variabele heet fldName, en bevat de veldnaam die je mee hebt gegeven ("Voornaam" of "Achternaam")
Kortom: probeer het nog een keer, maar laat nu de functie in tact, en verander alleen de actie fSort [Formuliernaam], [Veldnaam] naar je eigen situatie. En kies de juiste plek waar je de actie wilt laten uitvoeren. Dat kan <Bij klikken> zijn, of <Bij Dubbelklikken>.