Générer mot de passe excel aléatoire

Résolu
Anonyme -  
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Sous excel:
Colonne A: Nom
Colonne B: Prénom
Colonne C: @mail

Mais pour la colonne D, je souhaiterais générer un mot de passe aléatoire plutôt complexe, du type: qFH9rL6
Le tout automatiquement quand on rentre les 3 informations des colonnes A, B et C!
Quel formule dois-je utiliser en colonne D?

Merci

Cordialement,

Anonyme
Configuration: Windows XP
Firefox 3.5.3

5 réponses

  1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    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...
    3