Note: The other languages of the website are Google-translated. Back to English
Inloggen  \/ 
x
or
x
Registreer  \/ 
x

or

Hoe willekeurige tekenreeksen in een bereik in Excel te genereren?

Soms moet u willekeurige tekenreeksen in cellen genereren, zoals verschillende wachtwoorden. Dit artikel probeert u enkele trucs te laten zien om verschillende willekeurige strings in Excel te genereren.

Genereer willekeurige tekenreeksen met formules
Genereer willekeurige tekenreeksen met VBA-code
Genereer eenvoudig willekeurige tekenreeksen met Kutools voor Excel


Genereer willekeurige tekenreeksen met formules

De volgende formules kunnen u helpen bij het genereren van willekeurige getallen, letters en alfanumerieke waarden in een bereik in Excel.

1. Gebruik deze formule om een ​​willekeurig 5-cijferig nummer tussen 10000 en 99999 te maken: = RANDBETWEEN (10000,99999)en druk op Enter toets, een 5-cijferig nummer wordt weergegeven in een cel, selecteer vervolgens de cel en sleep de vulgreep naar het bereik dat u deze formule wilt bevatten, een bereik van 5-cijferige nummers is gegenereerd, zie screenshots:

doc-genereren-strings1 -2 doc-genereren-strings2

Opmerking:: u kunt de argumenten wijzigen om aan uw behoefte te voldoen.

2. Gebruik deze formule om een ​​willekeurige letter te maken: = CHAR (RANDBETWEEN (65,90)). Deze formule kan een willekeurige letter van a tot z genereren, als u vier willekeurige letters moet maken, moet u het teken & gebruiken om de letters toe te voegen. Zoals = CHAR (RANDBETWEEN (65,90)) & CHAR (RANDBETWEEN (65,90)) & CHAR (RANDBETWEEN (65,90)) & CHAR (RANDBETWEEN (65,90)). Vervolgens krijgt u vier willekeurige letters en sleept u de vulgreep naar het bereik waarin u deze formule wilt hebben. Zie screenshot:

doc-genereren-strings3

Notes:

(1.) De formule is geldig in Excel 2007, 2010 en 2013, maar niet in Excel 2003. Gebruik in Excel 2003 de formule = CHAR (INT (RAND () * 25 + 65)) & CHAR (INT (RAND () * 25 + 65)) & CHAR (INT (RAND () * 25 + 65)) & CHAR (INT (RAND () * 25 + 65))

(2.) In formule 65 is A en 90 is Z.

(3.) U kunt het teken & gebruiken om het aantal benodigde letters toe te voegen.

3. Gebruik deze formule om een ​​willekeurige alfanumerieke reeks te maken met twee letters en twee cijfers: = CHAR (RANDBETWEEN (65,90)) & CHAR (RANDBETWEEN (65,90)) & RANDBETWEEN (10,99) En je krijgt de volgende strings in een bereik dat twee letters en twee cijfers bevat:

doc-genereren-strings4

Opmerking:: u kunt de argumenten wijzigen om het cijfer naar behoefte te krijgen, en & gebruiken om het aantal letters toe te voegen.

Genereer eenvoudig willekeurige tekenreeksen in het geselecteerde bereik:

Het is gemakkelijk om willekeurige tekenreeksen met specifieke tekens en tekstlengte te genereren met de Voeg willekeurige gegevens in nut van Kutools for Excel.
Download Kutools nu voor Excel! (30 dagen gratis parcours)


Genereer willekeurige tekenreeksen met VBA-code

Als u denkt dat bovenstaande formules moeilijk en lastig zijn, kan de volgende VBA-code u veel gemakkelijker helpen. Doe als volgt:

1. Houd de ALT + F11 toetsen, en het opent de Microsoft Visual Basic voor toepassingen venster.

2. Klikken Invoegen > Moduleen plak de volgende macro in het Module venster.

Public Function RandomizeF(Num1 As Integer, Num2 As Integer)
'Update 20131107
Dim Rand As String
Application.Volatile
getLen = Int((Num2 + 1 - Num1) * Rnd + Num1)
Do
    i = i + 1
    Randomize
    Rand = Rand & Chr(Int((85) * Rnd + 38))
Loop Until i = getLen
RandomizeF = Rand
End Function

3. Sla vervolgens de code op en sluit deze, voer deze functie in een cel in = WillekeurigF (x, y) om een ​​willekeurige tekenreeks in te voegen met een minimale lengte van x tekens en een maximale lengte van y tekens.

4. In dit voorbeeld zal ik function gebruiken = WillekeurigF (5,10) om een ​​tekenreeks van tussen de 5 en 10 tekens te genereren. Druk vervolgens op Enter -toets, selecteer de cel en sleep de vulgreep naar het bereik waarin u deze functie wilt hebben. En willekeurige alfanumerieke en specifieke tekenreeksen die tussen de 5 en 10 tekens zijn gemaakt. Zie screenshot:

doc-genereren-strings5


Genereer willekeurige tekenreeksen met Kutools voor Excel

Is er een manier om willekeurige tekenreeksen te genereren met letters, cijfers en speciale tekens, of meer? Kutools for Excel's Voeg willekeurige gegevens in is een uitstekende generator voor willekeurige getallen (en tekstreeksen), die willekeurige getallen, willekeurige tekstreeksen of willekeurige getallen en tekst en symbolen kan genereren met allerlei soorten tekens, inclusief letters, cijfers, speciale tekens, spatie en zelfs aangepaste tekenreeksen.

Voor het aanvragen Kutools for Excel, Dan kunt u download en installeer het eerst.

1. Selecteer een bereik waarin u willekeurige tekenreeksen wilt genereren en klik vervolgens op Kutools > Invoegen > Voeg willekeurige gegevens in. Zie screenshot:

3. In de Voeg willekeurige gegevens in dialoogvenster, klik Draad tabblad en kies het type tekens dat u nodig hebt, en specificeer vervolgens de lengte van de tekenreeks in het Snaarlengte vak en klik ten slotte op het OK knop. Zie screenshot:

Vervolgens is het geselecteerde bereik gevuld met willekeurige tekenreeksen.

Tip: als u een gespecificeerde datatekenreeks (zoals ???? @. ??. com) in een bereik wilt genereren of invoegen, kunt u dit hulpprogramma ook gebruiken. Doe als volgt:

1. Selecteer een bereik, specificeer de tekens en vink aan Door masker. Voer vervolgens de opgegeven gegevensreeksen in die u nodig hebt. Zie screenshot:

Opmerking:: Gebruik makend van ? om een ​​cijfer van een willekeurig teken aan te geven in de laatste gespecificeerde opmaakstrings.

2. Dan klikken OK or Toepassen. De opgegeven opmaakgegevensstrings zijn als volgt willekeurig gegenereerd. Zie screenshot:

Kutools for Excel's Voeg willekeurige gegevens in kan u helpen bij het eenvoudig verwerken van de volgende bewerkingen in een bereikcel.

  • Genereer willekeurige getallen in een bereik of voeg ze in
  • Genereer of voeg een willekeurige datum in een bereik in
  • Genereer of voeg een aangepaste lijst in een bereik in

  Als u een gratis proefperiode (30 dagen) van dit hulpprogramma wilt, klik om het te downloaden, en ga vervolgens de bewerking toepassen volgens de bovenstaande stappen.


Demo: genereer willekeurige tekenreeksen in een bereik


Verwante Artikel:


De beste tools voor kantoorproductiviteit

Kutools voor Excel lost de meeste van uw problemen op en verhoogt uw productiviteit met 80%

  • visfuik: Snel invoegen complexe formules, grafieken en alles wat je eerder hebt gebruikt; Versleutel cellen met wachtwoord; Maak een mailinglijst en stuur e-mails ...
  • Super Formula-balk (bewerk eenvoudig meerdere regels tekst en formule); Lay-out lezen (gemakkelijk grote aantallen cellen lezen en bewerken); Plakken in gefilterd bereik...
  • Voeg cellen / rijen / kolommen samen zonder gegevens te verliezen; Gespleten cellen inhoud; Combineer dubbele rijen / kolommen... Voorkom dubbele cellen; Vergelijk Ranges...
  • Selecteer Dupliceren of Uniek Rijen; Selecteer lege rijen (alle cellen zijn leeg); Super zoeken en fuzzy zoeken in veel werkboeken; Willekeurige selectie ...
  • Exacte kopie Meerdere cellen zonder de formuleverwijzing te wijzigen; Maak automatisch verwijzingen naar meerdere bladen; Plaats kogels, Selectievakjes en meer ...
  • Extraheer tekst, Tekst toevoegen, Verwijderen op positie, Ruimte verwijderen; Paging-subtotalen maken en afdrukken; Converteren tussen celinhoud en opmerkingen...
  • Super filter (bewaar en pas filterschema's toe op andere bladen); Geavanceerd sorteren per maand / week / dag, frequentie en meer; Speciaal filter door vet, cursief ...
  • Combineer werkmappen en werkbladen; Tabellen samenvoegen op basis van sleutelkolommen; Gegevens splitsen in meerdere bladen; Batch Converteer xls, xlsx en PDF...
  • Meer dan 300 krachtige functies. Ondersteunt Office / Excel 2007-2019 en 365. Ondersteunt alle talen. Eenvoudig te implementeren in uw onderneming of organisatie. Gratis proefperiode van 30 dagen met volledige functies. 60 dagen geld-terug-garantie.
kte tabblad 201905

Office-tabblad Brengt een interface met tabbladen naar Office en maakt uw werk veel gemakkelijker

  • Schakel bewerken en lezen met tabbladen in Word, Excel, PowerPoint in, Publisher, Access, Visio en Project.
  • Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster in plaats van in nieuwe vensters.
  • Verhoogt uw productiviteit met 50% en vermindert elke dag honderden muisklikken voor u!
officetab onderkant
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Carl · 4 years ago
    I found this useful as a starting point--I hadn't touched VBA in several years, so it was way easier to use the sample code here as a basis than start from scratch.

    Skelly1008, have you thought about something like this?

    Do
    Randomize
    charVal = (Int(85 * Rnd) + 48)
    If charVal > &H30 And charVal < &H7A Then
    If Not (charVal > &H5A And charVal < &H61) Then
    If Not (charVal > &H39 And charVal < &H41) Then
    newChar = Chr(charVal)
    Rand = Rand & newChar
    End If
    i = i + 1
    End If
    End If
    Loop Until i = getLen

    That generates strings that contain only a-z, A-Z, and 0-9.
  • To post as a guest, your comment is unpublished.
    skelly1008 · 4 years ago
    I'm looking for a code that can generate any number 0 to 9 and or any letter A to Z. But I need 25 characters in the that final out put.
  • To post as a guest, your comment is unpublished.
    Nuno Figueiredo · 4 years ago
    Found way:
    1st: For each char: =RANDBETWEEN(0;1) to randomly select a number or a letter (result in A2 to A9, for example)
    2nd: =IF(An=0;RANDBETWEEN(0;9);CHAR(RAND()*26+97)) - in B2 to B9 -> to generate a number or a letter depending on result in A column
    3rd: in the cell you want the generated password: =B2&B3&B4&B5&B6&B7&B8&B9
  • To post as a guest, your comment is unpublished.
    JoJo · 5 years ago
    I live the formula but once I enter something in another field the numbers in the random fields change. I only want it to randomly generate one time. Not every time I enter data in other fields on the worksheet. Is that a separate function? Thanks!
  • To post as a guest, your comment is unpublished.
    rOHIT · 5 years ago
    Hi I want one help from you. I have to replace one last three values in this text for example: LoadTesting . I want to change only last three word of it
    • To post as a guest, your comment is unpublished.
      Jingle · 5 years ago
      [quote name="rOHIT"]Hi I want one help from you. I have to replace one last three values in this text for example: LoadTesting . I want to change only last three word of it[/quote]
      Assuming it is in cell A1:
      [code] =MID(A1,1,LEN(A1)-3)&"CAT" [/code]
  • To post as a guest, your comment is unpublished.
    Philip · 5 years ago
    Hi,

    On generating the random number in excel,can we insert the value to a form?any query plz share
  • To post as a guest, your comment is unpublished.
    Samantha R. · 6 years ago
    This is several times better than I dared hope for!! I completely disregarded the idea of generating several values in a single cell. Guaranteed I'll be using this info every chance I get! 11/10.
  • To post as a guest, your comment is unpublished.
    simone · 6 years ago
    Hi i would like to make the same in a MS WORD tab. is it possible ?
  • To post as a guest, your comment is unpublished.
    Adam · 6 years ago
    The VBA isn't working as a true random number. I'm using (10,12) as the criteria and if I run it down a couple thousand rows and do a countif formula in the adjacent column I find many duplicate passwords.
  • To post as a guest, your comment is unpublished.
    Carly · 6 years ago
    Very helpful, thank you.
    Using the VBA code, is it possible to only show letters and numbers and not other symbols?
  • To post as a guest, your comment is unpublished.
    Valentino · 6 years ago
    it works :)
    But every time he is generating new passwords, if i select or generate on another cell, previewed ones are changing all the time, and i want to not to change them. please help
    • To post as a guest, your comment is unpublished.
      HelloKelly · 6 years ago
      Hi,
      (1) After generation new passwords, you can copy them, and then paste as values.

      (2) See this article: [url]http://www.extendoffice.com/documents/excel/2496-excel-random-number-stop-changing.html[/url]
  • To post as a guest, your comment is unpublished.
    curtis · 7 years ago
    Is there a way to keep the values from changing every time I change a different field in the sheet? The passwords re-randomize every time something is changed in the sheet at all.
  • To post as a guest, your comment is unpublished.
    mel · 7 years ago
    hi,
    I need to create unique codes - how can I test to ensure the codes are not duplicated?
  • To post as a guest, your comment is unpublished.
    lineth peou · 7 years ago
    thank you for posting use full formula.
  • To post as a guest, your comment is unpublished.
    Anil Choudhary · 7 years ago
    How to do the randbetween for jan to dec string.
    • To post as a guest, your comment is unpublished.
      HelloKelly · 7 years ago
      Hi Anil Choudhary,

      You can try our Kutools for Excel. Click the Kutools > Insert Tools > Insert Random Data, and then in the Random Data dialog box, click the Custom list tab. Here you can select the custom list of month names, and then click OK.

      You can see the steps in detail at: http://www.extendoffice.com/product/kutools-for-excel/excel-random-number-generator.html#a4
  • To post as a guest, your comment is unpublished.
    Crystal · 7 years ago
    VBA method worked great. Thanks so much. I really needed this!
    Take care...
  • To post as a guest, your comment is unpublished.
    Dan88 · 7 years ago
    I was wondering if there was a way to add a generic word to the beginning of each generated code, i.e. DISCOUNT56979, DISCOUNT88531, etc. The reason I ask is so that I can track discounts used from different leads.
    • To post as a guest, your comment is unpublished.
      HelloKelly · 7 years ago
      In the Insert Random Data dialog box, there is a [b]By mask[/b] option on the String tab that can help you.

      For example, Add the “DISCOUNT” before the 5 random characters, please check the [b]By mask[/b] option, and then enter the “[i][b]DISCOUNT?????[/b][/i]” in the following box.
      • To post as a guest, your comment is unpublished.
        RRK · 6 years ago
        Try This: ="DISCOUNT"&RANDBETWEEN(10000,99999)
        This Code is for 5 Random numeric character after "Discount"

        For alphanumeric try this:
        ="DISCOUNT"&CHAR(RANDBETWEEN(65,90))& CHAR(RANDBETWEEN(65,90)) & CHAR(RANDBETWEEN(65,90)) & CHAR(RANDBETWEEN(65,90))&RANDBETWEEN(0,9)

        or

        ="DISCOUNT"&CHAR(RANDBETWEEN(65,90))& CHAR(RANDBETWEEN(65,90)) & CHAR(RANDBETWEEN(65,90))&RANDBETWEEN(10,99)
  • To post as a guest, your comment is unpublished.
    JD99 · 7 years ago
    Hi Guys,
    I would like to exclude zeros, O's and X's from the randomly generated string. How is best to achieve this? Many thanks
    • To post as a guest, your comment is unpublished.
      HelloKelly · 7 years ago
      Hi,
      It is impossible to exclude some characters from the random string when they are generating with the methods in this article.

      However, you can replace the excluded characters with other letters or numbers in the random strings.

      First of all select these strings, and then open the Find and Replace dialog box with hotkeys of Ctrl + F, at last replace each excluded character with a specified letter or number.
  • To post as a guest, your comment is unpublished.
    HappyE · 8 years ago
    Thanks for your sharing. For generate random alphanumeric function is not working in Excel 2003 version. Also, how to make it to 8 digits instead of 4?
    • To post as a guest, your comment is unpublished.
      HelloKelly · 8 years ago
      Hi HappyE,
      To generate 8 digits of random alphanumeric, you can repeat the & CHAR(INT(RAND() * 25 + 65)) 8 times in the function. That’s meaning the function changes to:

      =CHAR(INT(RAND( )* 25 + 65)) & CHAR(INT(RAND() * 25 + 65)) & CHAR(INT(RAND() * 25 + 65)) & CHAR(INT(RAND() * 25 + 65))& CHAR(INT(RAND() * 25 + 65)) & CHAR(INT(RAND() * 25 + 65)) & CHAR(INT(RAND() * 25 + 65))& CHAR(INT(RAND() * 25 + 65))
      • To post as a guest, your comment is unpublished.
        MayZ · 7 years ago
        HelloKelly,
        Great formula, thanks for posting it as I've found it very useful generating passwords. Do you know how to generate it without repeating characters at all? Example - it just returned "JUUJFENQ" but I can't have the repeating 'UU'.
        TIA,
        MayZ
  • To post as a guest, your comment is unpublished.
    HelloKelly · 8 years ago
    Hi LAurent,

    Thank you for your comment. I am very sorry the first method with formula (=CHAR) works well in Excel 2007 and 2010, but not Excel 2003. In Excel 2003, you can try the formula

    =CHAR(INT(RAND()* 25 + 65))
    or
    =CHAR(INT(RAND()* 25 + 65)) & CHAR(INT(RAND()* 25 + 65)) & CHAR(INT(RAND()* 25 + 65)) & CHAR(INT(RAND()* 25 + 65))

    By the way, the VBA code works fine in Excel 2003, and we recommend you try it.
  • To post as a guest, your comment is unpublished.
    LAurent · 8 years ago
    Great tuto
    but The function does not work for me using EXCEL 2003