Comment traduire "sauf" dans la formule ci-dessous?
Thaiko82
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
Thaiko82 Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
Thaiko82 Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
La formule suivante permet d'obtenir des codes à 6 caractères aléatoires avec pour seul caractère fixe le chiffre et première lettre du début.
Hors, j'aimerais ajouter une condition qui exclurait la lettre "L". ça fait un moment que je me casse la tête et je ne trouve pas comment faire, pourriez-vous m'aider, s'il vous plaît?
="8u"&(CHAR((INT(RAND()*26)+1)+64)&(CHAR((INT(RAND()*26)+1)+64)&(CHAR((INT(RAND()*26)+1)+64)&(CHAR((INT(RAND()*26)+1)+64)))))
Exemple de résultat: 8UBLFG
Merci beaucoup d'avance!
Meilleures salutations
La formule suivante permet d'obtenir des codes à 6 caractères aléatoires avec pour seul caractère fixe le chiffre et première lettre du début.
Hors, j'aimerais ajouter une condition qui exclurait la lettre "L". ça fait un moment que je me casse la tête et je ne trouve pas comment faire, pourriez-vous m'aider, s'il vous plaît?
="8u"&(CHAR((INT(RAND()*26)+1)+64)&(CHAR((INT(RAND()*26)+1)+64)&(CHAR((INT(RAND()*26)+1)+64)&(CHAR((INT(RAND()*26)+1)+64)))))
Exemple de résultat: 8UBLFG
Merci beaucoup d'avance!
Meilleures salutations
3 réponses
-
Bonjour,
J'ai l'impression qu'il faudrait utiliser 4 cellules intermédiaire pour fixer le nombre aléatoire qui doit être utilisé 2 fois (test+utilisation)
C'est plus simple avec une fonction personnalisée en VBA :Function code4L() Dim i As Long, L As String 'Application.Volatile For i = 1 To 4 L = Int(Rnd() * 25 + 1) code4L = code4L & Chr(IIf(L = 12, 26, L) + 64) Next i End Function
Si tu veux que ce soit réévalué à chaque recalcul de la feuille (ou par F9) enlève l'apostrophe devant Application.Volatile
Alt+F11 pour voir le code dans le Module1
https://www.cjoint.com/c/CHvsBdr5MVW
eric
-
Bonjour,
Si c'est pour une application volatile on y parvient par formule en ajoutant 2 Alea.entre.borne (RANDBETWEEN)
="7r"&CAR(64+ALEA.ENTRE.BORNES(1;11)+ALEA.ENTRE.BORNES(0;15))&CAR(64+ALEA.ENTRE.BORNES(1;11)+ALEA.ENTRE.BORNES(0;15))&CAR.....etc -
Merci beacuoup à vous deux!
Je vais tester si ça marche de l'une ou l'autre façon.