Voor onderstaande oplossing moet je in Excel het uitvoeren van macro's toestaan.
Of dat in jouw Excelbestand juist staat ingesteld, kun je controleren als volgt:
- Kies in Excel: "Bestand" - "Opties";
- Kies in de linkerkolom: "Vertrouwenscentrum", en rechts daarvan: "Instellingen voor het vertrouwenscentrum";
- Kies in de linkerkolom: "Macro-instellingen", en duid aan de rechterkant aan: "VBA-macro's inschakelen" (ook al wordt dat niet aanbevolen), en "Toegang tot het objectmodel van het VBA-project vertrouwen".
- Klik op "Ok" en nogmaals op "Ok".
- Klik onderaan in Excel met de rechtermuisknop op de naam van het blad waarin je van kleine letters hoofdletters wil maken (bv. Blad1), en kies in het verschijnende menu: "Programmacode weergeven".
- Dubbelklik aan de linkerkant op de naam van hetzelfde blad, kopieer de code onder deze tekst en plaats die aan de rechterkant.
- Sluit het venster door rechts-bovenaan in de blauwe balk op het kruisje te klikken.
- Kies in Excel: "Bestand" - "Opslaan als", kies de locatie waar je het bestand op wil slaan, vul een geschikte naam in, en sla het bestand op als "Excel-werkmap met macro's" (*.xlsm).
Bij invoer in een cel in het bereik A1:A500 zal de macro nu zijn werk doen. Pas het bereik aan naar je eigen voorkeur, maar let er wel op dat als je de macro op vele duizenden cellen wil toepassen, dat de werking van Excel (sterk) kan vertragen.
Code: Selecteer alles
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:A500")) Is Nothing Then
Application.EnableEvents = False
Target.Value = UCase(Target.Value)
Application.EnableEvents = True
End If
End Sub