Note: The other languages of the website are Google-translated. Back to English

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-generate-strings1 -2 doc-generate-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-generate-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-generate-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écharger Kutools for Excel Maintenant! (30-journée sentier libre)


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-generate-strings5


Générer 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-jour) 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:


Les meilleurs outils de productivité de bureau

Kutools for Excel Résout la plupart de vos problèmes et augmente votre productivité de 80 %

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe; Créer une liste de diffusion et envoyer des e-mails ...
  • Barre Super Formula (modifiez facilement plusieurs lignes de texte et de formule); Disposition de lecture (lire et modifier facilement un grand nombre de cellules); Coller dans la plage filtréeplus
  • Fusionner les cellules / lignes / colonnes sans perdre de données; Contenu des cellules divisées; Combiner des lignes / colonnes en double... Empêcher les cellules en double; Comparer les gammesplus
  • Sélectionnez Dupliquer ou Unique Lignes; Sélectionnez les lignes vides (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux classeurs; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de formule; Créer automatiquement des références à plusieurs feuilles; Insérer des puces, Cases à cocher et plus encore ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre le contenu et les commentaires des cellulesplus
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial par gras, italique ...
  • Combiner des classeurs et des feuilles de travail; Fusionner les tableaux en fonction des colonnes clés; Diviser les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDFplus
  • Plus de 300 fonctionnalités puissantes. Prend en charge Office / Excel 2007-2021 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Fonctionnalités complètes Essai gratuit de 30 jours. Garantie de remboursement de 60 jours.
onglet kte 201905

Office Tab apporte une interface à onglets à Office et simplifie considérablement 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!
bas de cabine

Commentaires (29)
Pas encore de notes. Soyez le premier à évaluer!
Ce commentaire a été minimisé par le modérateur sur le site
Super tuto mais la fonction ne fonctionne pas pour moi avec EXCEL 2003
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour LAurent, Merci pour votre commentaire. Je suis vraiment désolé que la première méthode avec la formule (=CHAR) fonctionne bien dans Excel 2007 et 2010, mais pas Excel 2003. Dans Excel 2003, vous pouvez essayer la formule =CHAR(INT(RAND()* 25 + 65)) ou =CAR(INT(RAND()* 25 + 65)) & CAR(INT(RAND()* 25 + 65)) & CHAR(INT(RAND()* 25 + 65)) & CAR(INT(RAND()* * 25 + 65)) Soit dit en passant, le code VBA fonctionne bien dans Excel 2003, et nous vous recommandons de l'essayer.
Ce commentaire a été minimisé par le modérateur sur le site
Merci pour votre partage. La fonction de génération alphanumérique aléatoire ne fonctionne pas dans la version Excel 2003. Aussi, comment le faire à 8 chiffres au lieu de 4 ?
Ce commentaire a été minimisé par le modérateur sur le site
Salut HappyE, Pour générer 8 chiffres alphanumériques aléatoires, vous pouvez répéter le & CHAR(INT(RAND() * 25 + 65)) 8 fois dans la fonction. Cela signifie que la fonction devient : =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))& CAR(INT(RAND() * XNUMX + XNUMX))
Ce commentaire a été minimisé par le modérateur sur le site
HelloKelly, Super formule, merci de l'avoir publiée car je l'ai trouvé très utile pour générer des mots de passe. Savez-vous comment le générer sans répéter du tout les caractères ? Exemple - il vient de renvoyer "JUUJFENQ" mais je ne peux pas répéter "UU". TIA, MayZ
Ce commentaire a été minimisé par le modérateur sur le site
Salut les gars, je voudrais exclure les zéros, les O et les X de la chaîne générée aléatoirement. Comment est-il préférable d'y parvenir? Merci beaucoup
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour, Il est impossible d'exclure certains caractères de la chaîne aléatoire lorsqu'ils sont générés avec les méthodes de cet article. Cependant, vous pouvez remplacer les caractères exclus avec d'autres lettres ou chiffres dans les chaînes aléatoires. Tout d'abord, sélectionnez ces chaînes, puis ouvrez la boîte de dialogue Rechercher et remplacer avec les raccourcis clavier Ctrl + F, remplacez enfin chaque caractère exclu par une lettre ou un chiffre spécifié.
Ce commentaire a été minimisé par le modérateur sur le site
Je me demandais s'il y avait un moyen d'ajouter un mot générique au début de chaque code généré, c'est-à-dire DISCOUNT56979, DISCOUNT88531, etc. La raison pour laquelle je demande est que je puisse suivre les remises utilisées à partir de différents prospects.
Ce commentaire a été minimisé par le modérateur sur le site
Dans la boîte de dialogue Insérer des données aléatoires, il y a un Par masque option sur l'onglet Chaîne qui peut vous aider. Par exemple, ajoutez le "RÉDUCTION" avant les 5 caractères aléatoires, veuillez vérifier le Par masque option, puis entrez le "REMISE?????» dans l'encadré suivant.
Ce commentaire a été minimisé par le modérateur sur le site
Essayez ceci : ="DISCOUNT"&RANDBETWEEN(10000,99999) Ce code est pour 5 caractères numériques aléatoires après "Discount" 65,90)) & CHAR(RANDBETWEEN(65,90)) & CHAR(RANDBETWEEN(65,90))&RANDBETWEEN(65,90) ou ="RÉDUCTION"&CHAR(RANDBETWEEN(0,9))& CHAR(RANDBETWEEN(65,90, 65,90)) & CHAR(RANDBETWEEN(65,90))&RANDBETWEEN(10,99)
Ce commentaire a été minimisé par le modérateur sur le site
La méthode VBA a très bien fonctionné. Merci beaucoup. J'avais vraiment besoin de ça ! Prends soin...
Ce commentaire a été minimisé par le modérateur sur le site
Comment faire le randbetween pour la chaîne jan à déc.
Ce commentaire a été minimisé par le modérateur sur le site
Salut Anil Choudhary, Vous pouvez essayer notre Kutools for Excel. Cliquez sur Kutools > Insérer des outils > Insérer des données aléatoires, puis dans la boîte de dialogue Données aléatoires, cliquez sur l'onglet Liste personnalisée. Ici, vous pouvez sélectionner la liste personnalisée des noms de mois, puis cliquer sur OK. Vous pouvez voir les étapes en détail sur : http://www.extendoffice.com/product/kutools-for-excel/excel-random-number-generator.html#a4
Ce commentaire a été minimisé par le modérateur sur le site
merci d'avoir posté utiliser la formule complète.
Ce commentaire a été minimisé par le modérateur sur le site
Salut, j'ai besoin de créer des codes uniques - comment puis-je tester pour m'assurer que les codes ne sont pas dupliqués ?
Ce commentaire a été minimisé par le modérateur sur le site
Existe-t-il un moyen d'empêcher les valeurs de changer chaque fois que je modifie un champ différent dans la feuille ? Les mots de passe sont re-randomisés à chaque fois que quelque chose est modifié dans la feuille.
Ce commentaire a été minimisé par le modérateur sur le site
ça marche :) Mais chaque fois qu'il génère de nouveaux mots de passe, si je sélectionne ou génère sur une autre cellule, ceux prévisualisés changent tout le temps, et je veux ne pas les changer. s'il vous plait aidez moi
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour, (1) Après avoir généré de nouveaux mots de passe, vous pouvez les copier, puis les coller en tant que valeurs. (2) Voir cet article : [url]http://www.extendoffice.com/documents/excel/2496-excel-random-number-stop-changing.html[/ Url]
Ce commentaire a été minimisé par le modérateur sur le site
Très utile, merci. En utilisant le code VBA, est-il possible de n'afficher que des lettres et des chiffres et pas d'autres symboles ?
Ce commentaire a été minimisé par le modérateur sur le site
Le VBA ne fonctionne pas comme un vrai nombre aléatoire. J'utilise (10,12) comme critère et si je l'exécute sur quelques milliers de lignes et que je fais une formule countif dans la colonne adjacente, je trouve de nombreux mots de passe en double.
Ce commentaire a été minimisé par le modérateur sur le site
Salut, je voudrais faire la même chose dans un onglet MS WORD. c'est possible ?
Ce commentaire a été minimisé par le modérateur sur le site
C'est plusieurs fois mieux que ce que j'osais espérer !! J'ai complètement ignoré l'idée de générer plusieurs valeurs dans une seule cellule. Garanti, j'utiliserai cette information chaque fois que j'en aurai l'occasion ! 11/10.
Ce commentaire a été minimisé par le modérateur sur le site
Salut, Lors de la génération du nombre aléatoire dans Excel, pouvons-nous insérer la valeur dans un formulaire? toute requête plz partager
Ce commentaire a été minimisé par le modérateur sur le site
Salut, je veux une aide de votre part. Je dois remplacer une des trois dernières valeurs dans ce texte par exemple : LoadTesting . Je veux changer seulement les trois derniers mots de celui-ci
Ce commentaire a été minimisé par le modérateur sur le site
[quote]Salut, je veux une aide de votre part. Je dois remplacer une des trois dernières valeurs dans ce texte par exemple : LoadTesting . Je veux changer seulement les trois derniers mots de celui-ciPar rOHIT[/quote] En supposant qu'il se trouve dans la cellule A1 :

=MID(A1,1,LEN(A1)-3)&"CAT"
Ce commentaire a été minimisé par le modérateur sur le site
Je vis la formule mais une fois que j'entre quelque chose dans un autre champ, les nombres dans les champs aléatoires changent. Je veux seulement qu'il soit généré aléatoirement une fois. Pas à chaque fois que je saisis des données dans d'autres champs de la feuille de calcul. Est-ce une fonction distincte ? Merci!
Ce commentaire a été minimisé par le modérateur sur le site
Méthode trouvée : 1er : Pour chaque caractère : =RANDBETWEEN(0;1) pour sélectionner aléatoirement un chiffre ou une lettre (résultat en A2 à A9, par exemple) 2ème : =IF(An=0;RANDBETWEEN(0;9); CHAR(RAND()*26+97)) - en B2 à B9 -> pour générer un chiffre ou une lettre en fonction du résultat dans la colonne A 3ème : dans la cellule où vous voulez le mot de passe généré : =B2&B3&B4&B5&B6&B7&B8&B9
Ce commentaire a été minimisé par le modérateur sur le site
Je cherche un code qui peut générer n'importe quel chiffre de 0 à 9 et/ou n'importe quelle lettre de A à Z. Mais j'ai besoin de 25 caractères dans la sortie finale.
Il n'y a pas encore de commentaires postés ici
Voir plus

Nous suivre

Copyright © 2009 - www.extendoffice.com. | Tous les droits sont réservés. Alimenté par ExtendOffice. | | Plan du site
Microsoft et le logo Office sont des marques commerciales ou des marques déposées de Microsoft Corporation aux États-Unis et / ou dans d'autres pays.
Protégé par Sectigo SSL