Générer mot de passe excel aléatoire
Résolu/Fermé
Anonyme
-
9 oct. 2009 à 11:01
Mike-31 Messages postés 18350 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 28 novembre 2024 - 12 oct. 2009 à 11:04
Mike-31 Messages postés 18350 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 28 novembre 2024 - 12 oct. 2009 à 11:04
A voir également:
- Excel générer mot de passe aléatoire
- Mot de passe administrateur freebox ✓ - Forum Freebox
- Generer mot de passe - Télécharger - Sécurité
- Voir mot de passe wifi android - Guide
- Mot de passe administrateur - Guide
- Trousseau mot de passe iphone - Guide
5 réponses
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
9 oct. 2009 à 12:39
9 oct. 2009 à 12:39
Bonjour,
Il n'est pas évident de "bricoler" une formule qui te donne un résultat aléatoire. Par VBA, une macro te ferait ça sans souci. Néanmoins, en bidouillant à partir de la formule ALEA() d'excel, on peux obtenir un résultat :
=STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)
En A1 tu places l'alphabet majuscule les chiffres de 0 à 9 et l'alphabet minuscule, tout collé sans espaces :
ABCDE...0123....abcde...
en B1 la formule :
=STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)
Pour obtenir 7 caractères aléatoires :
Il faut placer 7 fois la même formule avec & entre 2 :
=STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)&STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)&STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)&STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)&STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)&STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)&STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)
Pour étirer ta formule n'oublie pas de placer des signes $ comme ceci $A$1 en lieu et place de chaque A1.
Le problème de cette formule est qu'elle est "volatile". Donc à chaque nouvelle saisie dans ta feuille de calcul, le résultat change.
Tu peux contourner ce problème en faisant : copier / Collage spécial "valeur" soit manuellement soit par macro automatique, très simple d'utilisation :
Dans un module VBA tu insères ce code :
Sub Macro1()
ActiveCell.Copy
ActiveCell.Offset(0, 1).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
Tu cliques sur la cellule ou tu viens d'indiquer la formule et appuies sur ALT + F8 choisir Macro1 et exécuter.
Cette macro copie / colle spécial dans la cellule à droite de la cellule active...
Il n'est pas évident de "bricoler" une formule qui te donne un résultat aléatoire. Par VBA, une macro te ferait ça sans souci. Néanmoins, en bidouillant à partir de la formule ALEA() d'excel, on peux obtenir un résultat :
=STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)
En A1 tu places l'alphabet majuscule les chiffres de 0 à 9 et l'alphabet minuscule, tout collé sans espaces :
ABCDE...0123....abcde...
en B1 la formule :
=STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)
Pour obtenir 7 caractères aléatoires :
Il faut placer 7 fois la même formule avec & entre 2 :
=STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)&STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)&STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)&STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)&STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)&STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)&STXT(A1;ARRONDI.SUP(ALEA()*62;0);1)
Pour étirer ta formule n'oublie pas de placer des signes $ comme ceci $A$1 en lieu et place de chaque A1.
Le problème de cette formule est qu'elle est "volatile". Donc à chaque nouvelle saisie dans ta feuille de calcul, le résultat change.
Tu peux contourner ce problème en faisant : copier / Collage spécial "valeur" soit manuellement soit par macro automatique, très simple d'utilisation :
Dans un module VBA tu insères ce code :
Sub Macro1()
ActiveCell.Copy
ActiveCell.Offset(0, 1).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
Tu cliques sur la cellule ou tu viens d'indiquer la formule et appuies sur ALT + F8 choisir Macro1 et exécuter.
Cette macro copie / colle spécial dans la cellule à droite de la cellule active...