Inputbox qui s'ouvre 3 fois au lieu d'une...
Résolu
jeanphy_
Messages postés
8
Date d'inscription
Statut
Membre
Dernière intervention
-
melanie1324 Messages postés 1504 Date d'inscription Statut Membre Dernière intervention -
melanie1324 Messages postés 1504 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Inputbox qui s'ouvre 3 fois au lieu d'une...
- Ai suite 3 - Télécharger - Optimisation
- Voir un lieu en direct par satellite - Guide
- Picasa 3 - Télécharger - Albums photo
- Trouver un lieu avec coordonnées gps - Guide
- Qu'est ce qu'une femme fait 3 fois par jour et un homme une fois dans sa vie - Forum Loisirs / Divertissements
10 réponses
Bonjour,
Pour mieux comprendre, appuies sur F8 (pas à pas détaillé), tu verras comment ta macro fonctionne
Ton inputbox s'ouvre 3 fois parce que tu lui demandes 3 fois de s'ouvrir :
'de i = 0 jusqu'à 2
For i = 0 To 2 'je fais tourner mon bazarre sur les lignes 1 a 3 de la plage. cad la ligne 0 a 2 dans la listbox
'si ListBox_Device.Selected(i) a pour valeur vraie pour i =0, pour i = 1, pour i =2
If ListBox_Device.Selected(i) = True Then
'alors tu fais apparaître toon inputbox si pour i=0, i=1, i=2 si ListBox_Device.Selected(0), ListBox_Device.Selected(1), ListBox_Device.Selected(2) sont vrais
InputBox_Result = InputBox(ListBox_Device.Value & " ?", "") '
Pour mieux comprendre, appuies sur F8 (pas à pas détaillé), tu verras comment ta macro fonctionne
Ton inputbox s'ouvre 3 fois parce que tu lui demandes 3 fois de s'ouvrir :
'de i = 0 jusqu'à 2
For i = 0 To 2 'je fais tourner mon bazarre sur les lignes 1 a 3 de la plage. cad la ligne 0 a 2 dans la listbox
'si ListBox_Device.Selected(i) a pour valeur vraie pour i =0, pour i = 1, pour i =2
If ListBox_Device.Selected(i) = True Then
'alors tu fais apparaître toon inputbox si pour i=0, i=1, i=2 si ListBox_Device.Selected(0), ListBox_Device.Selected(1), ListBox_Device.Selected(2) sont vrais
InputBox_Result = InputBox(ListBox_Device.Value & " ?", "") '
merci pour ta reponse!
je viens d'utiliser f8 (merci pour ce conseil d'ailleurs).
effectivement je boucle 3 fois sur mon inputbox, mais en revenant a chaque fois au debut de ma routine, ce qui est assez bizarre! (non?)
en revanche je n'arrive pas a bien comprendre la suite de ton post: il ne faudrait pas que j'index ListBox_Device.Selected() avec le i de ma boucle?
comment je peux balayer mes 3 lignes si je ne le fais pas?
je viens d'utiliser f8 (merci pour ce conseil d'ailleurs).
effectivement je boucle 3 fois sur mon inputbox, mais en revenant a chaque fois au debut de ma routine, ce qui est assez bizarre! (non?)
en revanche je n'arrive pas a bien comprendre la suite de ton post: il ne faudrait pas que j'index ListBox_Device.Selected() avec le i de ma boucle?
comment je peux balayer mes 3 lignes si je ne le fais pas?
Bonjour,
Je ne sais pas ce que tu veux faire. Donc sans ca je ne peux pas te dire.
Tu demandais pourquoi ton inputbox apparaissait 3 fois.
Tu utilises une boucle qui balaie 3 lignes différentes :
for i=0 to 2
Maintenant la question est quelles est ou quelles sont les conditions que tu veux pour qu'apparaisse ton inputbox?
En gros, quel est le but de ton code?
Je ne sais pas ce que tu veux faire. Donc sans ca je ne peux pas te dire.
Tu demandais pourquoi ton inputbox apparaissait 3 fois.
Tu utilises une boucle qui balaie 3 lignes différentes :
for i=0 to 2
Maintenant la question est quelles est ou quelles sont les conditions que tu veux pour qu'apparaisse ton inputbox?
En gros, quel est le but de ton code?
je veux que lorsque l'utilisateur clic sur l'une des 3 lignes de la combobox, soit affichee un inputbox. une fois que cette box et remplie et validee par l'utilisateur, je veux ecrire son contenue sur la ligne correspondante de la plage dont est issu ma combobox.
edit:
voici mon fichier epure des autres fonctions
pour lancer l'userform voulu il faut clicker sur le bouton adequate a droite
https://www.fichier-xls.fr/2013/10/14/test-system-configurator/
edit 2:
lorsque je mets une msgbox juste avant mon inputbox pour afficher la valeur de i, il reste bien identique au numero de la ligne selectionnee dans la combo ,les 3 fois que l'inputbox s'ouvre...
edit:
voici mon fichier epure des autres fonctions
pour lancer l'userform voulu il faut clicker sur le bouton adequate a droite
https://www.fichier-xls.fr/2013/10/14/test-system-configurator/
edit 2:
lorsque je mets une msgbox juste avant mon inputbox pour afficher la valeur de i, il reste bien identique au numero de la ligne selectionnee dans la combo ,les 3 fois que l'inputbox s'ouvre...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Y a un truc que je ne pige pas, c'est lorsque la macro passe sur la ligne suivante, elle recommence du début :
Worksheets("MMF Configurator").Range("ListBox_Range_Step1").Cells(i + 1, 2).Value = InputBox_Result
Quel est le lien entre ton userform et la plage qui s'appelle ListBox_Range_Step1 ?
Car on dirait que dès qu'il écrit sur cette plage, il comprend qu'il faut relancer la macro. J'avoue que je suis dépassée sur ce coup là.
Y a un truc que je ne pige pas, c'est lorsque la macro passe sur la ligne suivante, elle recommence du début :
Worksheets("MMF Configurator").Range("ListBox_Range_Step1").Cells(i + 1, 2).Value = InputBox_Result
Quel est le lien entre ton userform et la plage qui s'appelle ListBox_Range_Step1 ?
Car on dirait que dès qu'il écrit sur cette plage, il comprend qu'il faut relancer la macro. J'avoue que je suis dépassée sur ce coup là.
le lien entre les deux?!
heu aucun normalement: ma plage est une plage statique definie a la main sur la feuille excel (on peut la voir dans le fichier excel que j'ai charge). et l'userform est cree... comme un userform? ^^ je ne vois pas trop quoi dire dessus desole :/
je vais essayer avec une autre plage pour voir...
heu aucun normalement: ma plage est une plage statique definie a la main sur la feuille excel (on peut la voir dans le fichier excel que j'ai charge). et l'userform est cree... comme un userform? ^^ je ne vois pas trop quoi dire dessus desole :/
je vais essayer avec une autre plage pour voir...
bon j'ai résolu le pb mais je sais pas si ca va te convenir :
https://www.cjoint.com/?CJoqqi9vEDk
Regarde si ca peut aller
https://www.cjoint.com/?CJoqqi9vEDk
Regarde si ca peut aller
je dois avoir plus de merde que je ne pensais dans mon code, ta solution ne marche pas dans mon fichier complet...
ce que je vais faire vu que je sais que mon code marche pour n'importe quelle autre plage, je vais bidouiller comme ca!
merci pour ton aide en tout cas :)
ce que je vais faire vu que je sais que mon code marche pour n'importe quelle autre plage, je vais bidouiller comme ca!
merci pour ton aide en tout cas :)