Passer au contenu principal

Comment générer des chaînes de caractères aléatoires dans une plage dans Excel?

Parfois, vous devrez peut-être générer des chaînes aléatoires dans les cellules, telles que des mots de passe différents. Cet article tente de vous montrer quelques astuces pour générer différentes chaînes aléatoires dans Excel.

Générer des chaînes de caractères aléatoires avec des formules
Générer des chaînes de caractères aléatoires avec le code VBA
Générez facilement des chaînes de caractères aléatoires avec Kutools for Excel


Générer des chaînes de caractères aléatoires avec des formules

Les formules suivantes peuvent vous aider à générer des nombres aléatoires, des lettres et des valeurs alphanumériques dans une plage dans Excel.

1. Pour créer un nombre aléatoire à 5 chiffres entre 10000 et 99999, utilisez cette formule: = RANDBETWEEN (10000,99999)et appuyez sur Entrer , un nombre à 5 chiffres sera affiché dans une cellule, puis sélectionnez la cellule et faites glisser la poignée de recopie vers la plage dans laquelle vous souhaitez contenir cette formule, une plage de nombres à 5 chiffres a été générée, voir les captures d'écran:

doc-générer-strings1 -2 doc-générer-strings2

Notes: vous pouvez modifier les arguments pour répondre à vos besoins.

2. Pour créer une lettre aléatoire, utilisez la formule suivante: = CHAR (RANDBETWEEN (65,90)). Cette formule peut générer une lettre aléatoire de a à z, si vous devez créer quatre lettres aléatoires, vous devez utiliser le caractère & pour ajouter les lettres. Tel que = CHAR (RANDBETWEEN (65,90)) & CHAR (RANDBETWEEN (65,90)) & CHAR (RANDBETWEEN (65,90)) & CHAR (RANDBETWEEN (65,90)). Ensuite, vous obtiendrez quatre lettres aléatoires, puis faites glisser la poignée de recopie vers la plage dans laquelle vous souhaitez contenir cette formule. Voir la capture d'écran:

doc-générer-strings3

Notes:

(1.) La formule est valide dans Excel 2007, 2010 et 2013, mais pas dans Excel 2003. Dans Excel 2003, veuillez utiliser la formule = CHAR (INT (RAND () * 25 + 65)) & CHAR (INT (RAND () * 25 + 65)) & CHAR (INT (RAND () * 25 + 65)) & CHAR (INT (RAND () * 25 + 65))

(2.) Dans la formule 65 est A et 90 est Z.

(3.) Vous pouvez utiliser le caractère & pour ajouter le nombre de lettres dont vous avez besoin.

3. Pour créer une chaîne alphanumérique aléatoire composée de deux lettres et de deux chiffres, utilisez cette formule: = CHAR (RANDBETWEEN (65,90)) & CHAR (RANDBETWEEN (65,90)) & RANDBETWEEN (10,99) Et vous obtiendrez les chaînes suivantes dans une plage contenant deux lettres et deux chiffres:

doc-générer-strings4

Notes: vous pouvez changer les arguments pour obtenir le nombre de chiffres dont vous avez besoin, et utiliser & pour ajouter le nombre de lettres.

Générez facilement des chaînes de caractères aléatoires dans la plage sélectionnée:

Il est facile de générer des chaînes de caractères aléatoires avec des caractères spécifiques et une longueur de texte avec le Insérer des données aléatoires utilité de Kutools for Excel.
Téléchargez Kutools pour Excel maintenant ! (parcours gratuit de 30 jours)


Générer des chaînes de caractères aléatoires avec le code VBA

Si vous pensez que les formules ci-dessus sont difficiles et gênantes, le code VBA suivant peut vous aider beaucoup plus facilement. Veuillez faire comme ceci:

1. Maintenez le ALT + F11 clés, et il ouvre le Microsoft Visual Basic pour applications fenêtre.

2Cliquez sur insérer > Moduleet collez la macro suivante dans le Module fenêtre.

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. Puis enregistrez et fermez le code, dans une cellule, entrez cette fonction = RandomizeF (x, y) pour insérer une chaîne de caractères aléatoires d'une longueur minimale de x caractères et d'une longueur maximale de y caractères.

4. Dans cet exemple, j'utiliserai la fonction = RandomizeF (5,10) pour générer une chaîne de caractères comprenant entre 5 et 10 caractères. Puis appuyez Entrer , sélectionnez la cellule et faites glisser la poignée de recopie vers la plage dans laquelle vous souhaitez contenir cette fonction. Et aléatoire de chaînes de caractères alphanumériques et spécifiques qui ont été créées entre 5 et 10 caractères. Voir la capture d'écran:

doc-générer-strings5


Générez des chaînes de caractères aléatoires avec Kutools for Excel

Existe-t-il un moyen de générer des chaînes aléatoires avec des lettres, des chiffres et des caractères spéciaux, ou plus? Kutools for Excel's Insérer des données aléatoires est un excellent générateur de nombres aléatoires (et de chaînes de texte), qui peut générer des nombres aléatoires, des chaînes de texte aléatoires ou des nombres aléatoires, du texte et des symboles avec toutes sortes de caractères, y compris des lettres, des chiffres, des caractères spéciaux, des espaces et même des chaînes personnalisées.

Avant d'appliquer Kutools for Excel, S'il vous plaît téléchargez et installez-le d'abord.

1. Sélectionnez une plage dans laquelle vous générerez des chaînes aléatoires, puis cliquez sur Kutools > insérer > Insérez des données aléatoires. Voir capture d'écran:

3. Dans le Insérer des données aléatoires boîte de dialogue, cliquez sur Chaîne et choisissez le type de caractères dont vous avez besoin, puis spécifiez la longueur de la chaîne dans le Longueur de chaine et enfin cliquez sur le OK bouton. Voir la capture d'écran:

Ensuite, la plage sélectionnée a été remplie avec des chaînes de caractères aléatoires.

Conseil : si vous souhaitez générer ou insérer des chaînes de données de mise en forme spécifiées (telles que ???? @. ??. com) dans une plage, vous pouvez également utiliser cet utilitaire. Faites comme ceci:

1. Sélectionnez une plage et spécifiez les caractères et cochez Par masque. Saisissez ensuite les chaînes de données spécifiées dont vous avez besoin. Voir la capture d'écran:

Notes: En utilisant ? pour indiquer un chiffre de caractère aléatoire dans les dernières chaînes de mise en forme spécifiées.

2. Puis clique OK or Appliquer. Les chaînes de données de mise en forme spécifiées ont été générées de manière aléatoire comme suit. Voir la capture d'écran:

Kutools for Excel's Insérer des données aléatoires peut vous aider à traiter facilement les opérations suivantes dans une cellule de plage.

  • Générer ou insérer des nombres aléatoires dans une plage
  • Générer ou insérer une date aléatoire dans une plage
  • Générer ou insérer une liste personnalisée dans une plage

  Si vous souhaitez bénéficier d'un essai gratuit (30 jours) de cet utilitaire, veuillez cliquer pour le télécharger, puis passez à appliquer l'opération selon les étapes ci-dessus.


Démo: générer des chaînes de caractères aléatoires dans une plage


Article connexe:

Meilleurs outils de productivité bureautique

Caractéristiques populaires: Rechercher, mettre en évidence ou identifier les doublons   |  Supprimer les lignes vides   |  Combinez des colonnes ou des cellules sans perdre de données   |   Tour sans formule 
Super recherche: VSearchup à critères multiples    VSearch à valeurs multiples  |   Recherche virtuelle sur plusieurs feuilles   |   Recherche floue ....
Liste déroulante avancée: Créez rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante à sélection multiple ....
Gestionnaire de colonnes: Ajouter un nombre spécifique de colonnes  |  Déplacer les colonnes  |  Basculer l'état de visibilité des colonnes masquées  |  Comparer les plages et les colonnes 
Caractéristiques en vedette: Mise au point de la grille   |  Voir Design   |   Grande barre de formule    Gestionnaire de classeurs et de feuilles   |  Centre de ressources (Texte automatique)   |  Sélecteur de date   |  Combiner des feuilles de travail   |  Crypter/déchiffrer les cellules    Envoyer des e-mails par liste   |  Super filtre   |   Filtre spécial (filtre gras/italique/barré...) ...
Les 15 meilleurs ensembles d'outils12 Texte Outils (Ajouter du texte, Supprimer les caractères, ...)   |   50+ Graphique Types (Diagramme de Gantt, ...)   |   40+ Pratique Formules (Calculer l'âge en fonction de l'anniversaire, ...)   |   19 Insertion Outils (Insérer le code QR, Insérer une image à partir du chemin, ...)   |   12 Conversion Outils (Nombres en mots, Conversion des devises, ...)   |   7 Fusionner et fractionner Outils (Lignes de combinaison avancées, Cellules divisés, ...)   |   ... et plus

Améliorez vos compétences Excel avec Kutools for Excel et faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel offre plus de 300 fonctionnalités avancées pour augmenter la productivité et gagner du temps.  Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...

onglet kte 201905


Office Tab apporte une interface à onglets à Office et facilite grandement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!

Comments (29)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
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.
This comment was minimized by the moderator on the site
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.
This comment was minimized by the moderator on the site
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
This comment was minimized by the moderator on the site
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!
This comment was minimized by the moderator on the site
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
This comment was minimized by the moderator on the site
[quote]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 itBy rOHIT[/quote] Assuming it is in cell A1:

=MID(A1,1,LEN(A1)-3)&"CAT"
This comment was minimized by the moderator on the site
Hi, On generating the random number in excel,can we insert the value to a form?any query plz share
This comment was minimized by the moderator on the site
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.
This comment was minimized by the moderator on the site
Hi i would like to make the same in a MS WORD tab. is it possible ?
This comment was minimized by the moderator on the site
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.
This comment was minimized by the moderator on the site
Very helpful, thank you. Using the VBA code, is it possible to only show letters and numbers and not other symbols?
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations