Problème avec USF, lié au 'Modal' ?

erics83

XLDnaute Impliqué
Bonjour,

Dans mon classeur, j'ai une recherche de nom via un USF. J'ai 3 USF :
USF1: recherche de nom
USF2 : recherche d'action
USF3 : présentation

Le principe : je tape les lettres du nom et les solutions apparaissent (merci JB pour vos tutos !!!)

Lorsque je passe en direct, c'est à dire lorsque j'appelle l'USF1 directement (code "seul" dans mon classeur test), pas de problème.

Par contre, lorsque je passe d'abord par un USF (USF2) et ensuite que j'appelle mon USF de recherche (USF1), là cela ne fonctionne pas.... : j'ai un premier USF (USF2)qui recherche le nom d'une action, si elle n'existe pas, il ouvre un USF (USF3) pour créer et remplir certaines données. Parmi ces données, il faut saisir le nom du responsable de l'action. Donc en cliquant sur le commandbutton, cela déclenche l'USF1, mais la recherche (=les solutions) n'apparaissent pas...

Je pense que ça doit être tout simple et/ou lié un 'modal' (si j'ai bien compris après certaines recherches....), mais cela faire 24h que je cherche sans résultat....

Merci pour votre aide,
A+
 

Pièces jointes

  • Classeurtestprobleme.xlsm
    104.9 KB · Affichages: 8

erics83

XLDnaute Impliqué
Re-bonjour,

Je vais essayer d'être un peu plus clair, à force d'être dans le problème, je suis allé peut-être allé trop vite dans mes explications/demande....

Donc, j'ai un classeur, qui alimentera un GANTT. 3 USF :
Choixagent : recherche de nom d'agents
RechercheAction : recherche d'une action
Visionaction : présentation générale, et entrée des données.

Lorsque je lance le code pour la recherche d'agent (=lancement de l'USF Choixagent, via le sub 'Seul'), aucun problème : je clique les premières lettres, et la Listbox affiche les propositions.

Lorsque je veux entrer une nouvelle action : je lance le sub 'Via' (qui ouvre l'USF 'rechercheaction'), je tape le nom de la nouvelle action (exemple 'Eric'), l'USF ouvre 'Visionaction' et va créer une nouvelle action. Lorsque je clique sur le commandbutton 'agent' (sous le label 'Responsable'), cela déclenche l'USF 'Choixagent', mais par contre pas de déclenchement de la listbox (j'ai même mis un 'stop' dans le module pour voir, et le code ne déclenche dans 'RechAgent_Change()'), et.....je ne comprends pas pourquoi..... : pas de propositions dans la listbox....

ça doit être simple, lié au 'modal' (j'ai regardé les conseils de SilkyRoad sur la question, mais...il doit manquer une petite chose....(que je ne trouve pas...)

Merci pour votre aide,
 

erics83

XLDnaute Impliqué
Bonjour sousou,

J'ai essayé en remplaçant la listbox ('Rech') par une combobox1, et cela ne fonctionne pas....
VB:
Dim listeagent()
'--------------------------------------
Private Sub UserForm_Initialize()
nomretenu = ""
Me.ComboBox1.List = Feuil8.Range("a2:a" & Feuil8.[A65000].End(xlUp).Row).Value
listeagent = Me.ComboBox1.List
Me.ComboBox1.Visible = True
End Sub
'--------------------------------------------
Private Sub RechAgent_Change()
   Me.ComboBox1.Clear
   Me.ComboBox1.Visible = True
   j = 0
   For i = LBound(listeagent) To UBound(listeagent)
     If UCase(listeagent(i, 0)) Like "*" & UCase(Me.ComboBox1) & "*" Then
        On Error Resume Next
        Me.ComboBox1.AddItem listeagent(i, 0)
        Me.ComboBox1.List(j, 1) = listeagent(i, 1)
        On Error GoTo 0
        j = j + 1
     End If
   Next i
End Sub
'---------------------------------------------
Private Sub Combobox1_Click()
nomretenu = Me.ComboBox1.Value
Unload Me
End Sub

Merci pour votre aide,
 

erics83

XLDnaute Impliqué
Merci sousou,

Effectivement ton code fonctionne parfaitement, merci ;)

Par contre il y avait un intérêt avec la listbox que l'on ne retrouve pas dans la combobox : lorsqu'on tape les premières lettres, les solutions possibles apparaissaient dans la listbox et donc en tapant par exemple 3 lettres, les solutions proposées étaient 'réduites' et donc il suffisait ensuite de cliquer sur le nom recherché.....ce qui ne se fait pas avec la combobox.....mais bon, mon problème est résolu grace à toi, merci

A+
 

erics83

XLDnaute Impliqué
Merci sousou,
Mais....cela ne fonctionne pas....ou alors, suis trop fatigué à force de bosser dessus et je ne vois pas l'évidence.....

Je joins le classeur test avec tes modifications. Je lance le code 'Via', j'entre "Eric' (cela va créer une nouvelle action, donc la présentation s'ouvre), je clique sur le commandbutton du 'responsable', qui ouvre l'USF de recherche de nom, je tape les premières lettres et les noms possibles n'apparaissent pas dans le combobox....

Merci pour ton aide,
 

Pièces jointes

  • Classeurtestproblemeaveccodesousou.xlsm
    110.1 KB · Affichages: 10

sousou

XLDnaute Barbatruc
Je pense que tu n'as pas tout à fait compris la combobox.
dans le fichier joint, j'ai rendu invisible la listbox et la text box, tu n'en as pas besoin.
dans la combox tap les lettres, (un t pour l'exemple), et la combo se place directement.
Pour faire mieux, tu peiux classer tes agents par ordre alpha
 

Pièces jointes

  • classeurtestproblemeaveccodesousou.xlsm
    109.4 KB · Affichages: 12

sousou

XLDnaute Barbatruc
Effectivement, mode modal, unload, je pense que c'est la manière dont tu gères les userforms,
J'ai repris avec tous les mode modal=false et changé un peu le code pour passer les infos entre userform
à Suivre...
 

Pièces jointes

  • classeurtestproblemeaveccodesousou-2.xlsm
    110.3 KB · Affichages: 16

erics83

XLDnaute Impliqué
Super cool sousou,

Merci, effectivement tout est ok ! et merci pour la correction du code :D

Merci !

Bonjour ChTi160, 3 USF car : 1 pour la recherche d'une action, 2 pour l'affichage et la complétude des données de l'action, 3 pour la recherche du nom du responsable de l'action.

Merci,
A+ pour de prochaines aventures....
 

Discussions similaires

Réponses
18
Affichages
598

Membres actuellement en ligne

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 811
dernier inscrit
caroline29260