Er zijn in feite twee methoden om snel wachtwoorden te genereren met Excel.
- Methode 1: Met de behulp van een macro, waarmee een nieuwe functie met Excel VBA toevoegen aan Excel;
- Methode 2: met behulp van de TEKEN- en ASELECTTUSSEN-functie.
Hieronder hebben we beide methodes uitgewerkt. Onze voorkeur gaat uit naar de eerste methode, waarbij we in Excel VBA een functie toevoegen aan de lijst met ingebouwde Excel functies.
Methode 1: wachtwoorden in Excel genereren met macro

Zoals je in bovenstaande afbeelding kunt zien wordt in de formulebalk de functie wachtwoord () gebruikt welke automatisch een wachtwoord genereert. Optioneel kun je tussen de haakjes de gewenste lengte van de wachtwoord vermelden. Als je niets vermeld, is de lengte van het wachtwoord 12 tekens. Hieronder hebben we gekozen voor een lengte van 20 karakters.

Verder controleert deze handgemaakte functie of er ten minste één hoofdletter, één kleine letter, één speciaal teken en één cijfer in het wachtwoord zit. Veel programma’s en websites verplichten dit namelijk.
Let op: functies worden in Excel bij elke wijziging opnieuw uitgevoerd. Zodra de functie de wachtwoorden heeft gegenereerd is het dus aan te raden om de wachtwoorden te kopieren en als platte tekst over de functies heen te plakken. Zie onderstaande screenshot.

Je kunt het VBA script hieronder kopiëren en toevoegen aan een nieuwe module in Excel VBA. Als je niet weet hoe dit moet, kun je dit artikel lezen. Je kunt natuurlijk ook even contact met Bas opnemen. Je kunt ook eventueel het gehele Excelbestand hier downloaden.
Script om handmatige wachtwoorden-functie toe te voegen aan Excel
' macro gemaakt door SnelExcel.nl
' gratis te downloaden op https://snelexcel.nl/wachtwoord-maken-met-excel-formule/
' meer informatie: www.snelexcel.nl
' e-mail: info@snelexcel.nl
Function wachtwoord(Optional aantalTekens As Integer)
Dim Tekens As Variant
Dim Teken As String
Dim WillekeurigGetal As Byte
Dim specialeTekens As Boolean
Dim getallen As Boolean
Dim kleineLetters As Boolean
Dim hoofdletters As Boolean
Tekens = Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T" _
, "U", "V", "W", "X", "Y", "Z", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v" _
, "w", "x", "y", "z", "-", "!", "&", "?")
redo:
wachtwoord = ""
specialeTekens = False
getallen = False
kleineLetters = False
hoofdletters = False
If aantalTekens < 1 Then
aantalTekens = 12
End If
For x = 1 To aantalTekens
WillekeurigGetal = WorksheetFunction.RandBetween(LBound(Tekens), UBound(Tekens))
Teken = Tekens(WillekeurigGetal)
Debug.Print WillekeurigGetal
If WillekeurigGetal > 61 Then
specialeTekens = True
End If
If WillekeurigGetal < 10 Then
getallen = True
End If
If WillekeurigGetal > 9 And WillekeurigGetal < 36 Then
hoofdletters = True
End If
If WillekeurigGetal > 35 Then
kleineLetters = True
End If
wachtwoord = wachtwoord & Teken
Next x
If Not specialeTekens Or Not getallen Or Not hoofdletters Or Not kleineLetters Then
GoTo redo
End If
End Function
Methode 2: wachtwoord maken met bestaande functies in Excel
De tweede methode om in Excel een wachtwoord te genereren is met onderstaande formule. Je kunt deze formule eenvoudig kopiëren en plakken in een van de cellen in Excel. De lengte van het wachtwoord is twaalf karakters. Dit kun je eenvoudig uitbreiden als je dat wilt. Dit doe je door dit gedeelte erachter te plakken: &TEKEN(ASELECTTUSSEN(35;126))
=TEKEN(ASELECTTUSSEN(35;126))&TEKEN(ASELECTTUSSEN(35;126))&TEKEN(ASELECTTUSSEN(35;126))&TEKEN(ASELECTTUSSEN(35;126))&TEKEN(ASELECTTUSSEN(35;126))&TEKEN(ASELECTTUSSEN(35;126))&TEKEN(ASELECTTUSSEN(35;126))&TEKEN(ASELECTTUSSEN(35;126))&TEKEN(ASELECTTUSSEN(35;126))&TEKEN(ASELECTTUSSEN(35;126))&TEKEN(ASELECTTUSSEN(35;126))&TEKEN(ASELECTTUSSEN(35;126))
Hoe automatisch een wachtwoord genereren in Excel werkt
Alle tekens in Excel hebben hun eigen nummer. De hoofdletter A heeft bijvoorbeeld 65 als nummer en de kleine letter b is gekoppeld aan nummer 98.

Doordat we gebruikmaken van de ASELECTTUSSEN-functie wordt er willekeurig twaalf keer een nummer gegenereerd. Dit nummer wordt opgegeven als input (ook wel argument genoemd) voor de TEKEN-functie. Dit resulteert in een wachtwoord van twaalf karakters.
Wachtwoord genereren in Engelstalige variant van Excel
Gebruik je de Engelstalige variant van Excel? Gebruik dan onderstaande formule.
=CHAR(RANDBETWEEN(35;126))&CHAR(RANDBETWEEN(35;126))&CHAR(RANDBETWEEN(35;126))&CHAR(RANDBETWEEN(35;126))&CHAR(RANDBETWEEN(35;126))&CHAR(RANDBETWEEN(35;126))&CHAR(RANDBETWEEN(35;126))&CHAR(RANDBETWEEN(35;126))&CHAR(RANDBETWEEN(35;126))&CHAR(RANDBETWEEN(35;126))&CHAR(RANDBETWEEN(35;126))&CHAR(RANDBETWEEN(35;126))
Excel hulp nodig?
Heb je een Excel vraagstuk? Neem dan contact met mij (Bas) op. Ik denk graag met je mee! Je kunt dan uitleggen waar je hulp bij kunt gebruiken. Vervolgens maak ik een inschatting of ik de aangewezen persoon ben om je hierbij te helpen en doe ik een voorstel.
Het eerste gesprek is altijd volledig kosteloos én vrijblijvend. Mail of bel me gerust!