generation de codes d'une facon symetrique!!!

methodesaladine

XLDnaute Nouveau
Bonsoir à tous et à toutes.:eek::)

Je me permets de faire une autre demande différente de l'autre que j'ai faite et beaucoup plus explicite^^!!!

Je cherche un moyen de générer des codes avec excel mais plus aléatoires, je vous ai fait un schéma explicatif:;)



1= G
2= V
3= 9
4= L
5= M
6= 2
7= R
8= S
9= 3
0= N
A= I
B= K
C= P
D= Q
E= 1
F= A
G= 0
H= E
I= H
J= 5
K= W
L= U
M= X
N= Z
O= 6
P= C
Q= O
R= Y
S= 4
T= D
U= F
V= B
W= 7
X= J
Y= T
Z= 8

Je souhaiterais que quand on rentre par exemple un code produit qu'on achète à un fournisseur cela puisse générer un code de 10 caracteres symétrique au code basique (que j'ai crée au dessus de ce message, par exemple Z=8 donc Z deviendra 8, Y=T donc Y deviendra T) de la facon suivante:


je prends un code fournisseur, par exemple ca sera YZ3TTU5RS4 et ca générera T89DDFMY4L

YZ3TTU5RS4
T89DDFMY4L


J'espère que vous m'avez compris, passez une bonne soirée et merci d'avance!!!;)
 

methodesaladine

XLDnaute Nouveau
Re : generation de codes d'une facon symetrique!!!

Bonjour,

est-ce que le "code basique" est a créer ou il existe déjà dans ton fichier?

Bonjour,
Le code basique est à créer (c'est celle que j'ai mis en exemple de 1àzero et de A à Z) elle servira à générer le code parallèle.;) le code basique servira donc à faire la génération et j'ai toujours pas trouvé un moyen de la faire.:confused:
 

skoobi

XLDnaute Barbatruc
Re : generation de codes d'une facon symetrique!!!

Re bonjour,

voici un code qui génère le "code basique" à chaque exécution de ce code. Dans cet exemple, le résultat est écrit sur la feuille, à toi de voir ce que tu veux en faire:

Code:
Sub test()
  Dim Dico As Object
  Set Dico = CreateObject("Scripting.Dictionary")
  'création de la liste 0 à 9 puis A à Z
  Dim ListeCode(1 To 36, 1 To 2)
  For i = 48 To 57
    ListeCode(i - 47, 1) = Chr(i)
  Next
  For i = 65 To 90
    ListeCode(i - 54, 1) = Chr(i)
  Next
  i = 0
  Do
  'génère une lettre aléatoirement entre A et Z
    Carac1 = Chr(Int((Rnd + (64 / 26)) * 26) + 1)
  'génère une chiffre aléatoirement entre 0 et 9
    Carac2 = Int(Rnd * 10)
  'quand un caractère ci-dessus n'a pas encore été généré, on l'affecte à l'élément
  'suivant de la ListeCode
    If Not Dico.Exists(Carac1) Then
      Dico.Add Carac1, Carac1
      i = i + 1
      ListeCode(i, 2) = Carac1
    ElseIf Not Dico.Exists(Carac2) Then
      Dico.Add Carac2, Carac2
      i = i + 1
      ListeCode(i, 2) = Carac2
    End If
  Loop Until i = 36
  Range("A1:B36").Value = ListeCode
End Sub
 

pierrejean

XLDnaute Barbatruc
Re : generation de codes d'une facon symetrique!!!

Re
bonjour methodesaladine
Salut Skoobi

En supposant que j'aie compris:

une fonction de codage (mais il n'y a rien qui soit aléatoire !!!)
 

Pièces jointes

  • methodesaladine.zip
    7.9 KB · Affichages: 32
  • methodesaladine.zip
    7.9 KB · Affichages: 34
  • methodesaladine.zip
    7.9 KB · Affichages: 35

pierrejean

XLDnaute Barbatruc
Re : generation de codes d'une facon symetrique!!!

Re

Avec la fonction qui permet le retour au code d'origine

Note: L'espace dans l'egalité en page Codage m'a un peu dérouté !!!
 

Pièces jointes

  • methodesaladine.zip
    8.9 KB · Affichages: 51
  • methodesaladine.zip
    8.9 KB · Affichages: 41
  • methodesaladine.zip
    8.9 KB · Affichages: 43

methodesaladine

XLDnaute Nouveau
Re : generation de codes d'une facon symetrique!!!

Bonjour à tous, bonjour à pierre jean, déjà juste pour vous dire qu'il n'y a rien d'aleatoire et je vais voir ce que vous m'avez préparé en vous remerciant, je vous dirais ca.:)

Bonjour à skoobi, je vais tester ce code en vous remerciant tres grandement.

à bientôt les amis.;)
 

methodesaladine

XLDnaute Nouveau
Re : generation de codes d'une facon symetrique!!!

Bonjour à tous, bonjour à pierre jean, déjà juste pour vous dire qu'il n'y a rien d'aleatoire et je vais voir ce que vous m'avez préparé en vous remerciant, je vous dirais ca.:)

Bonjour à skoobi, je vais tester ce code en vous remerciant tres grandement.

à bientôt les amis.;)


Bonjour à tous.:)
Bonjour skoobi et bonjour pierre jean, merci à pierre jean car c'est exactement ce que je voulais, c'est formidable, grand merci à vous pour ce grand travail.:)

Sinon pourriez vous m'expliquer le macro que vous avez insérez?

J'aimerais savoir si il existe aussi une solution alternative par formule (avec le fichier qu'a fait pierre jean), je n'ai pas d'idée, en vous remerciant grandement.;)
 

pierrejean

XLDnaute Barbatruc
Re : generation de codes d'une facon symetrique!!!

Re

J'ai commenté la fonction
Ne pas hesiter a revenir si ce n'est pas clair
 

Pièces jointes

  • methodesaladine.zip
    9.2 KB · Affichages: 46
  • methodesaladine.zip
    9.2 KB · Affichages: 49
  • methodesaladine.zip
    9.2 KB · Affichages: 51

methodesaladine

XLDnaute Nouveau
Re : generation de codes d'une facon symetrique!!!

Re

J'ai commenté la fonction
Ne pas hesiter a revenir si ce n'est pas clair

Bonjour à tous, bonjour à pierre jean, je suis désolé mais je n'ai pas compris, ce que je comprends c'est son fonctionnement, j'arrive à faire générer c'est parfait et grand merci, ce que je veux comprendre c'est la macro que vous avez inserée :eek:, en vous remerciant grandement de votre aide et je veux savoir si il existe une alternative par formule, en vous remerciant de votre solidarité!!!
;):cool:
 

methodesaladine

XLDnaute Nouveau
Re : generation de codes d'une facon symetrique!!!

Re

Pas du tout specialiste en formule , je ne saurais dire si c'est possible par formule
En ce qui concerne la macro ,quelle est la partie du code qui t'echappe ??

Bonjour à tous et bonjour pierre jean, en faite je debute et je decouvre les macros, c'est toute la partie du code que je veux comprendre, ca serait vraiment sympa en vous remerciant, j'ai toujours utilisé les formules^^.:D;)
 

pierrejean

XLDnaute Barbatruc
Re : generation de codes d'une facon symetrique!!!

Re

Il est bien difficile d'aller plus loin d'en l'explication du code
Je te suggere de te reporter a l'aide d'Excel pour
les boucles
l'utilisation des tableaux
la methode Split
les fonctions len Mid Trim
 

Discussions similaires

Réponses
7
Affichages
318

Statistiques des forums

Discussions
312 177
Messages
2 085 972
Membres
103 073
dernier inscrit
MSCHOE16