Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
842 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Générer des codes sur Excel

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Générer des codes sur Excel

n°2189760
macrosouci​s
Posté le 12-05-2013 à 13:45:53  profilanswer
 

Bonjour à tous,
 
Je galère pas mal à faire une macro assez simple en soit je pense mais n'ayant pas de base la dedans c'est vraiment désespérant...
 
Je demande donc si une personne aurait la gentillesse de me consacrer un peu de son temps pour me faire une macro sur Excel ! Les manœuvres à faire sont basiques certainement mais je ne les maîtrises pas bien ou pas du tout plutôt.
 
Donc en faite il me faudrait une macro générant des codes. En gros imaginons que l'on prenne 2 colonnes où on listes des mots ou autres. A chaque élément de ma colonne je vais lui associer un code spécifique ( idem pour la 2ème colonne).  
A partir de cela , je voudrais générer pour un couple ( imaginons les cellules B3 et C3), un code dans la cellule A3 !
 
 
Voilà je sais pas si vous avez compris mais je vous met un exemple:
 
Imaginons que ma cellule B2 comporte le mot "bière" ( le code associé à bière est le chiffre 1) et ma cellule C2 comporte le mot "ananas" ( le code associé à ananas est la lettre A). Le code généré dans la cellule A2 doit donc être 1A et ainsi de suite...
 
 
 
Ca serait génial si quelqu'un pouvais m'aider assez rapidement voir même me donner des pistes  
 
Mon email personnel: jeupppp@live.fr
 
Merci de votre aide !  

mood
Publicité
Posté le 12-05-2013 à 13:45:53  profilanswer
 

n°2189761
macrosouci​s
Posté le 12-05-2013 à 13:55:09  profilanswer
 

J'ai trouvé cette macro là sur ce forum même mais elle ne correspond pas vraiment à ce que je veux...
 
Sub AjoutCode()  
Dim strCode As String, I As Integer, L As Long, J As Long, N As Integer  
 
L = 1  
While Range("A" & L).Value <> ""  
strCode = Left(Range("A" & L).Value, 1)  
I = 1  
Do While I > 0  
I = InStr(I + 1, Range("A" & L).Value, " " )  
If I > 0 Then  
strCode = strCode & Left(Mid(Range("A" & L).Value, I + 1), 1)  
End If  
Loop  
strCode = strCode & Left(Range("B" & L).Value, 1)  
I = 1  
Do While I > 0  
I = InStr(I + 1, Range("B" & L).Value, " " )  
If I > 0 Then  
strCode = strCode & Left(Mid(Range("B" & L).Value, I + 1), 1)  
End If  
Loop  
J = 1  
N = 0  
strCode = UCase(strCode)  
While Range("C" & J).Value <> ""  
If J <> L Then  
If Left(Range("C" & J).Value, Len(Range("C" & J).Value) - 2) = strCode Then  
If CInt(Right(Range("C" & J).Value, 2)) > N Then N = CInt(Right(Range("C" & J).Value, 2))  
End If  
End If  
J = J + 1  
Wend  
 
N = N + 1  
If Range("C" & L).Value = "" Then  
If N < 10 Then  
Range("C" & L).Value = strCode & "0" & N  
Else  
Range("C" & L).Value = strCode & N  
End If  
End If  
L = L + 1  
Wend  
End Sub  
 
 
 
 
Je voudrais pas reprendre les Initiales de chaque colonne mais un nombre ou une lettre spécifique.
De plus comment étendre cette macro si on veut mettre en place un code disons pour 4, 5 colonnes etc...
Ah oui et aussi comment la modifier pour que pour chaque ligne s'affiche en bout de code le chiffre 001 pour la cellule A2 disons, puis 002 pour la cellule A3 et ainsi de suite pour toutes les lignes...car dans le programme ci-dessus, la personne vous dire que si, pour un couple donné, les initiales étaient les  mêmes, alors il mettait en fin de code le chiffre 02 pour les différencier mais je ne veux pas de cela.
 
merci beaucoup de votre aide !

n°2189762
macrosouci​s
Posté le 12-05-2013 à 13:56:31  profilanswer
 

Voici d'aileurs le détail de son post:
 
salut à tous,  
 
dans mon classeur excel, je voulais generer un code qui se place en colonne C par rapport au mot inscrit en colonne A et B sur la meme ligne.  
 
Je m'explique :  
 
A3 = drosera  
B3 = capensis alba  
C3 = DCA01 (le fameux code)  
 
En gros le code generer prend la premiere lettre de chaque mot plus la valeur 01, si DCA01 existe alors il pass a DCA02, etc...  
 
On m'a gentillement fait la macro, mais je n'arrive pas a l'adapter pour que le processus commence a partir de A3, car la si il n'y a rien en ligne 1 ça ne marche pas.  
 
 
voila !

n°2189768
Marc L
Posté le 12-05-2013 à 15:14:49  profilanswer
 

 
             Bonjour.
 

macrosoucis a écrit :

On m'a gentillement fait la macro […]


             Il aurait fallu commencer par là, en publiant son code et en indiquant de claires explications …
 

n°2189779
macrosouci​s
Posté le 12-05-2013 à 16:34:58  profilanswer
 

Bonjour,
 
Celle-ci est bien postée au post 1 par moi-même. Elle fonctionne en tout cas (j'ai copié et collé et lancé)mais j'y comprends pas grand chose à ce qu'il y a d'écrit...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Générer des codes sur Excel

 

Sujets relatifs
[VBA] comparaison de 2 fichiers excelFormule EXCEL
[VBA-Excel] selection d'une plage variable[VBA][Excel] UserForm modeless dans une boucle
[VBA][Excel] modif- selection onglet source.[résolu]S.O.S excel/access VBA
erreur formule excel[VBA-Macros][Excel]Comparaison de deux dates
A l'aiiiiide.!! Programation Excel urgentTransformer x onglets Excel en x pdf
Plus de sujets relatifs à : Générer des codes sur Excel


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR