macro selectionner valeurs d'une liste déroulante les unes apres les autres

soldier

XLDnaute Nouveau
Bonjour à tous,
j'espère que vous allez bien,
je me retourne vers vous car je ne suis guère un expert en macro mais je me débrouille tout de même...
j'ai recherché sur le forum sans vraiment trouver mon bonheur malheureusement même s'il m'a grandement aidé à avancer

vous trouverez mon probleme exposé dans les fichiers sur le lien suivant
http://victoria.horel.free.fr/HELP/


______________________________________________________________

dans l'onglet ACTION
j'ai en colonne Y une liste de devises qui est déterminée par formule
en employant la barre de menu " Données" puis " validation des données", j'ai fait une liste en cellule L16 reprenant Les valeurs de la colonne Y( plage de données nommée "partial ")
l'onglet VERIFICATION change de valeurs en fonction de la valeur de L16 dans ACTION
j'ai créé une macro appelée " KUKI" qui duplique l'onglet TEMPLATE qui puise ses infos dans VERIFICATION, le copie valeur, afin de ne pas toucher aux formules de l'onglet TEMPLATE original

_______________________________________________________________

ce que je cherche
1- CRÉER une macro
qui va permettre de
1) Sélectionner la première valeur de la liste en L16
et appliquer ensuite ma macro KUKI

2) Sélectionner ensuite la deuxième valeur de la liste L16
et appliquer ensuite ma macro KUKI

3 ) sélectionner ensuite la troisieme valeur de la liste L16
et appliquer ensuite ma macro KUKI

4) et ainsi de suite avec toutes les valeurs non vides de la liste en L16


pour résumer les actions de la macro
A) sélectionner les valeurs en L16 les unes après les autres
B ) executer ma macro KUKI après chaque changement
et cela autant de fois qu'il n'y a de valeurs en L16


_________________________________________________________________


2 - J'ai passé un temps monumental à chercher comment faire et n'étant pas un expert, suis assez confus avec ce que j'ai trouvé
je pensais employer Combobox1.ListIndex = 0,1,2... pour déterminer à chaque fois le rang des valeurs et répéter ma macro mais ca ne semble pas fonctionner
le fait est qu'il y a 3 autres listes déroulantes ( L 10, L 12, L14 ) créées de la meme facon que celle en L16 SUR LE MEME ONGLET ACTION
dans l'ordre des choses je pense que cela devrait etre la 4ème combobox créée
j'ai perdu 3-4 heures dessus et je n'en peux plus, je crise


Si qqn avait la solution à mon épineux problème, ce serait vraiment géant
Je vous remercie d'avance pour toute l'aide que vous pourrez me prodiguer
bien amclt :eek:
 
Dernière édition:

pierrejean

XLDnaute Barbatruc
Re : macro selectionner valeurs d'une liste déroulante les unes apres les autres

Re

j'ai jeté un coup d'oeil rapide a ton fichier mais je ne saisi pas bien l'interet de repeter kuki puisque sauf erreur de ma part cette macro n'utilise pas l'information contenue dans L16
 

soldier

XLDnaute Nouveau
Re : macro selectionner valeurs d'une liste déroulante les unes apres les autres

voici le code de KUKI
pourtant il s'agit de ma première ligne de code...
en sélectionnant une valeur de L16 de ACTION,
VERIFICATION change de valeurs,

KUKI agit sur un onglet appelé TEMPLATE ( absent de mon fichier pour des raisons confidentielles ) qui puisent les infos de VERIFICATION
ma macro KUKI ne fait que dupliquer TEMPLATE, le copier coller valeur, et effectuer qq corrections de mon choix

mais avant cela, il faut que VERIFICATION ait les bonnes valeurs
pour ce faire, il faut que ma MACRO A CREER puisse moduler la valeur de la cellule L16 de ACTION

rappel de ce que je souhaite faire
STEP 1: selectionner la première valeur en L16 de ACTION
STEP 2: appliquer KUKI
STEP 3: selectionner la deuxieme valeur de L16 de ACTION
STEP 4: appliquer KUKI
STEP ... : et ainsi de suite jusqu'à ce qu'il n'y ait plus de valeurs en L16

Je te remercie d'avance pour ton aide prodiguée ici,
j'espère sincèrement que c'est possible :eek:

______________________________________________________________

Sub kuki()
'
' kuki Macro
'

'
Range("L16").Select

Sheets("template").Select
Sheets("template").Copy Before:=Sheets(8)

Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

ActiveSheet.Range("$A$13:$AH$490").autofilter Field:=1, Criteria1:="="
Rows("20:100000").Select
Selection.Delete Shift:=xlUp
ActiveSheet.Range("$A$13:$AH$490").autofilter Field:=1



Range("F14:F10000").Select
Selection.Replace What:="P", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False

Range("G14:G10000").Select
Selection.Replace What:="615080", Replacement:="615005", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False

Range("AA14:AA10000").Select
Selection.ClearContents

Range("AG14:AG10000").Select
Selection.ClearContents


Cells.Select
Selection.NumberFormat = "@"


Sheets("template (3)").Select
Sheets("template (3)").Name = Range("J7").Value & " " & Range("M2").Value & " " & Range("I14").Value



End Sub

________________________________________________________________
 

pierrejean

XLDnaute Barbatruc
Re : macro selectionner valeurs d'une liste déroulante les unes apres les autres

Re

Teste ceci (je n'ai pas pu le faire car le lien avec un autre fichier aboutit a des erreurs et il existe des protections)
Entre nous ce n'est pas en selectionnant le range("L16") que cela change sa valeur !

Code:
Sub test()
For Each cel In Range("partial")
  Sheets("ACTION").Range("L16") = cel.Value
  Call kuki
Next cel
End Sub
 

soldier

XLDnaute Nouveau
Re : macro selectionner valeurs d'une liste déroulante les unes apres les autres

ahhhh pure joie que ta réponse, merci

cela fait ce que je cherchais

maintenant, y a t il un moyen d'arrêter la macro de façon propre, sans que le déboggeur s'ouvre à cause de deux noms de fichiers identiques dus aux valeurs vides de la plage partial
en effet le nom de mes onglets emploie la devise

je souhaiterai que la macro s'arrête dès qu'elle rencontre une valeur vide ou la valeur 0, dans la plage "partial"?

j'avais essayé ca à partir de ce que tu m'avais donné, mais à chaque fois cela m'ouvre le débogeur et pointe sur stop

_______________________________________________

Sub test()
For Each Cel In Range("partial")
If Cel.Value Like "" Then
Stop
End If


Sheets("ACTION").Range("L16") = Cel.Value
Call kuki
Next Cel
End Sub

_____________________________

un grand merci à toi pour ton aide précieuse :D
 

pierrejean

XLDnaute Barbatruc
Re : macro selectionner valeurs d'une liste déroulante les unes apres les autres

Re

A tester

Code:
Sub test()
For Each cel In Range("partial")
  if cel.value="" Or cel.value=0 then exit sub
  Sheets("ACTION").Range("L16") = cel.Value
  Call kuki
Next cel
End Sub
 

soldier

XLDnaute Nouveau
Re : macro selectionner valeurs d'une liste déroulante les unes apres les autres

halleluia
enfin c'est terminé
un grand grand merci à toi
mon sauveur :D

et maintenant pour la cerise sur le gâteau, si tu peux
j'aimerai que la macro KUKI ne déverse pas les onglets nouvellement créés dans le même fichier , mais les mettent tous ensemble dans un tout nouveau


comme tu peux le voir ici, je lui dis de dupliquer l'onglet , juste à coté de l'original = sheets(8)

_____________________

Sheets("template").Select
Sheets("template").Copy Before:=Sheets(8)

______________________

encore un grand merci
 

jmskalpel

XLDnaute Nouveau
Re : macro selectionner valeurs d'une liste déroulante les unes apres les autres

alors je vous explique parce que je n'ai pas bien compris la discussion:
J'ai une feuille et sur celle-ci j'ai une cellule fusionnée (T2:X2) dans laquelle j'ai mi une validation de donnée ( une liste de choix de date). Il y a en tout 6 choix , cependant certain sont vide
/!\ JE PRESISE QUE CES CHOIX SONT VARIABLE ! C'EST A DIRE QUE IL PEUX Y AVOIR DES VALEUR NULS (OU VIDE SI VOUS PREFEREZ) QUI NE SON PAS TOUJOURS AU MÊME ENDROIT, C'EST A DIRE QUE LE CHOIX 2 N'EST PAS TOUJOURS VIDE PAR EXEMPLE. DE MÊME QUE LE CHOIX NUMERO 6 N'EST PAS TOUJOURS VRAI ( OU NON NUL SA VEUT DIRE QU'IL PEUT ETRE VIDE PARFOIS)
Voila mon problème ( je vous le schématise ):
__________________________
| ici c'est ma liste de choix | \/ |
| _Choix 1_ |
| |
| _Choix 3_ |
| _Choix 4_ |
| |
| _Choix 6_ |

Selectionner le choix 1 ET SI CELUI-CI N'EST PAS NUL ALORS EXECUTER LA MACRO "imprimer la page actuel"
--> comme vous le voyez le choix 1 n'est pas vide donc la page s'imprime

Selectionner le choix 2 ET SI CELUI-CI N'EST PAS NUL ALORS EXECUTER LA MACRO "imprimer la page actuel"
--> comme vous le voyez le choix 2 est vide donc la page ne s'imprime pas

Selectionner le choix .....

Voila et cela pour tous les choix proposé dans ma liste

A bientot et merci de votre aide

Cordialement
:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D
 

Discussions similaires

Réponses
2
Affichages
284

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote