Mes UserForms ne se ferme pa malgrè Unload Me
Résolu
Fab
-
xav3601 Messages postés 3289 Date d'inscription Statut Membre Dernière intervention -
xav3601 Messages postés 3289 Date d'inscription Statut Membre Dernière intervention -
Bonjour le forum,
Alors voilà j'ai trois petites questions qui reste sans réponce après 2 jours de recherches (enfin surtout pour la dernière^^).
- 1ère question: pourquoi malgrè la commande
UserForm2.Show
unload me
La UserForm1 reste "cachée" derrière la 2, en effet quand je déplace la 2 surprise la 1 est toujours derrière :( ?
-2ème question: pourquoi lorsque j'actives dans les propriétés d'une textbox Scrollbar celle ci n'apparait pas lors du lancement de la userform?
- et dernière question la plus dure lol comment faire pour mettre des conditions dans une combobox. Je m'expliques, j'ai deux combobox une qui propose une criticité (1,2,.. à 10) et l'autre un type d'action (réglementation, 1er odre, 2nd odre). Et j'aimerai pouvoir lorsque l'utilisateur choisi réglementation qu'il y a une restriction au niveau de la criticité et qu'il ne puisse selectionner qu'un chiffre supérieur à 7.
Merci d'avance à celui ou celle qui pourra m'aider
Fab
Alors voilà j'ai trois petites questions qui reste sans réponce après 2 jours de recherches (enfin surtout pour la dernière^^).
- 1ère question: pourquoi malgrè la commande
UserForm2.Show
unload me
La UserForm1 reste "cachée" derrière la 2, en effet quand je déplace la 2 surprise la 1 est toujours derrière :( ?
-2ème question: pourquoi lorsque j'actives dans les propriétés d'une textbox Scrollbar celle ci n'apparait pas lors du lancement de la userform?
- et dernière question la plus dure lol comment faire pour mettre des conditions dans une combobox. Je m'expliques, j'ai deux combobox une qui propose une criticité (1,2,.. à 10) et l'autre un type d'action (réglementation, 1er odre, 2nd odre). Et j'aimerai pouvoir lorsque l'utilisateur choisi réglementation qu'il y a une restriction au niveau de la criticité et qu'il ne puisse selectionner qu'un chiffre supérieur à 7.
Merci d'avance à celui ou celle qui pourra m'aider
Fab
A voir également:
- Mes UserForms ne se ferme pa malgrè Unload Me
- Application se ferme toute seule android - Guide
- Rouvrir onglet fermé chrome - Guide
- Coco.fr fermé - Accueil - Réseaux sociaux
- Utiliser pc portable fermé - Guide
- Uptobox fermé - Accueil - Services en ligne
9 réponses
Alors pour repondre en vba il me semble que le me ne fonctione pas!
alors il faut utiliser:
unload userform1 -> vba
ou
me.close -> vb
mais plus certainement la premiere
ensuite pour ta 3eme question je te conseillerais une liste box et non combobox deja.
pour la deux je sais pas je n'ai jamais utilisé scroll bar
alors il faut utiliser:
unload userform1 -> vba
ou
me.close -> vb
mais plus certainement la premiere
ensuite pour ta 3eme question je te conseillerais une liste box et non combobox deja.
pour la deux je sais pas je n'ai jamais utilisé scroll bar
hello
je suis pas tres basic donc je pourrais pas répondre aux deux premières questions.
par contre, je pense que ta seconde combobox va devoir recalculer son contenu disponible à chaque changement de valeur de la première combobox.
ie:
lorsque cbo1.Text change
=> si valeur = 1 alors cbo2.liste = 'val1|val2|val3|val4'
=> si valeur = 2 alors cbo2.liste = 'val1|val2|val3|val4|val5'
=> si valeur = 1 alors cbo2.liste = 'val1|val2|val4'
etc
ou alors, le fin du fin, tu écris une nouvelle classe : la combo pilotée par une combo
mais de toutes façons, tu mettras à l'intérieur du code du genre ci-dessus
je suis pas tres basic donc je pourrais pas répondre aux deux premières questions.
par contre, je pense que ta seconde combobox va devoir recalculer son contenu disponible à chaque changement de valeur de la première combobox.
ie:
lorsque cbo1.Text change
=> si valeur = 1 alors cbo2.liste = 'val1|val2|val3|val4'
=> si valeur = 2 alors cbo2.liste = 'val1|val2|val3|val4|val5'
=> si valeur = 1 alors cbo2.liste = 'val1|val2|val4'
etc
ou alors, le fin du fin, tu écris une nouvelle classe : la combo pilotée par une combo
mais de toutes façons, tu mettras à l'intérieur du code du genre ci-dessus
bonjour à tous
quand tu mets USF2.show, le unload me s'effectuera après la fermeture de USF2
maintenant ce que tu peux faire
me.hide ' cache l'userform en cours
Userform2.show
Unload me
quand tu mets USF2.show, le unload me s'effectuera après la fermeture de USF2
maintenant ce que tu peux faire
me.hide ' cache l'userform en cours
Userform2.show
Unload me
pour ma 3ème question j'ai essayé se code mais il ne fonctionne pas :(
If ComBoBox14.value= "1er ordre" Then
Combobox14.value = combobox14.list(.listIndex "1,2,3,4"))
End If
If ComBoBox14.value= "1er ordre" Then
Combobox14.value = combobox14.list(.listIndex "1,2,3,4"))
End If
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
re:
pour la 3eme, je n'ai pas toutes les cartes, (j'ai pas tout compris dans les details)
peux tu poster ton fichier ?
tu vas sur ce lien : https://www.cjoint.com/index.php
tu charges ton fichier et tu crées le lien
puis tu postes le lien ici
@ te lire
pour la 3eme, je n'ai pas toutes les cartes, (j'ai pas tout compris dans les details)
peux tu poster ton fichier ?
tu vas sur ce lien : https://www.cjoint.com/index.php
tu charges ton fichier et tu crées le lien
puis tu postes le lien ici
@ te lire
Alors ce serait avec grand plaisir mais j'ai un petit menu gros problème avec cijoint, je n'ai pas tout dit dans le forum mes je suis stagiaire dans une entreprise qui possède des par-feu et autre truc du genre et qui m'empêche d'aller sur des site donc cijoint qui lui ne fonctionne carrement pas.
je vais donc expliquer le mieux possible ^^.
j'ai une combobox qui contient les nombres de 1 à 10 qui représentent une échelle de criticité.
une second combobox qui informe sur le domaine avec trois choix "réglementation","1er degré","2nd degré", hors il est impossible d'avoir une réglementation 6,5,4,3,2,1 elle est obligatoirement au dessus de 7 sur l'echelle de criticité.
Ce que je souhaite c'est que quand un utilisateur choisi réglementation il ne puisse choisir un nombre inférieur à 7 dans la seconde combobox.
Pour info mes Rowsources pour ces deux combobox sont situées sur une feuille excel.
J'espère avoir été un minimum limpide ^^.
Merci d'avance
je vais donc expliquer le mieux possible ^^.
j'ai une combobox qui contient les nombres de 1 à 10 qui représentent une échelle de criticité.
une second combobox qui informe sur le domaine avec trois choix "réglementation","1er degré","2nd degré", hors il est impossible d'avoir une réglementation 6,5,4,3,2,1 elle est obligatoirement au dessus de 7 sur l'echelle de criticité.
Ce que je souhaite c'est que quand un utilisateur choisi réglementation il ne puisse choisir un nombre inférieur à 7 dans la seconde combobox.
Pour info mes Rowsources pour ces deux combobox sont situées sur une feuille excel.
J'espère avoir été un minimum limpide ^^.
Merci d'avance
Dsl pour les nombreuses fautes d'orthographe je m'en suis rendu compte que maintenant c'est vraiment pas beau du tout dsl encore
Alors dans l'ordre:
1-utiliser une listebox pour ne pas permettre a l'user de modifier la liste, puis utiliser ce code:
initialisation:
userformX.listbox1.liste = Array("1","2","3","4","5",.."10")
dans le sub de combobox1
lorsque cbo1.Text change
=> si valeur = 1 alors
listbox1.clear
listbox1.liste = array(...)
voila j'espere avoir ete clair et efficace :)
1-utiliser une listebox pour ne pas permettre a l'user de modifier la liste, puis utiliser ce code:
initialisation:
userformX.listbox1.liste = Array("1","2","3","4","5",.."10")
dans le sub de combobox1
lorsque cbo1.Text change
=> si valeur = 1 alors
listbox1.clear
listbox1.liste = array(...)
voila j'espere avoir ete clair et efficace :)
Sub ComboBox14 Change()
If value = 1 Then
userform1.listbox1.clear
userform1.listbox1.list = array("7","8","9","10")
End If
peut etre comme ca
If value = 1 Then
userform1.listbox1.clear
userform1.listbox1.list = array("7","8","9","10")
End If
peut etre comme ca
Bonjour xav301,
hélas le code ne marche pas mais je vais comme même mettre résolu à la question car le titre étant "Mes UserForms ne se ferment pas malgrè Unload Me" et que ce problème est résolu ^^.
Je travails encore sur le code mais si vous avez d'autre idées je suis preneurs mais je pense que je tiens le bon bout ^^.
Bonne journée à vous
hélas le code ne marche pas mais je vais comme même mettre résolu à la question car le titre étant "Mes UserForms ne se ferment pas malgrè Unload Me" et que ce problème est résolu ^^.
Je travails encore sur le code mais si vous avez d'autre idées je suis preneurs mais je pense que je tiens le bon bout ^^.
Bonne journée à vous
Bonjour xav3601,
J'ai essayé le code et il fonctionne même avec une combobox. le voilà:
Private Sub UserForm_Initialize()
Me.ComboBox3.List = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10")
End Sub
Private Sub ComboBox4_Change()
If Me.ComboBox4.ListIndex = 1 Then
ComboBox3.Clear
ComboBox3.List = Array("7", "8", "9", "10")
End If
If Me.ComboBox4.ListIndex = 2 Then
ComboBox3.Clear
ComboBox3.List = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10")
End If
If Me.ComboBox4.ListIndex = 3 Then
ComboBox3.Clear
ComboBox3.List = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10")
End If
End Sub
Le seul problème est que dnas la dernière partie c'est un peu brouillion mais je suis débutant alors ça me satisfait lol
Merci à vous xav3601
J'ai essayé le code et il fonctionne même avec une combobox. le voilà:
Private Sub UserForm_Initialize()
Me.ComboBox3.List = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10")
End Sub
Private Sub ComboBox4_Change()
If Me.ComboBox4.ListIndex = 1 Then
ComboBox3.Clear
ComboBox3.List = Array("7", "8", "9", "10")
End If
If Me.ComboBox4.ListIndex = 2 Then
ComboBox3.Clear
ComboBox3.List = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10")
End If
If Me.ComboBox4.ListIndex = 3 Then
ComboBox3.Clear
ComboBox3.List = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10")
End If
End Sub
Le seul problème est que dnas la dernière partie c'est un peu brouillion mais je suis débutant alors ça me satisfait lol
Merci à vous xav3601
Oui donc escuser moi je suis en VBA ^^, j'ai essayé votre formule Unload UserFomX le seul problème c'est que la 1er userform est malgrè tout toujours présente en arrière plan quand je déplace la userform n°2.
Pour la troisième question pourquoi le fait d'utiliser une listbox au lieu d'une combobox simplifira mon problème de restriction, y'a t'il une fonction faisant cela au sein d'une listBox??