J'ai fini par l'ouvrir.
Mais j'ai ouvert le dernier et détecté une légère prise de confiance entre les deux
Diagnostic:
— Retiré CL.Add Me.CBxFonctionPers, "Fonction": Juste !
— Indépendante CBxFonctionPers, 4 '<-- Ajout code Fonction personne: juste ! As tu songé que d'autres ComboBox pourraient revenir petit à petit par cette porte ?…
— Me.CBxFonctionPers.Text = VLgn(1, 4) '<-- Ajout code Fonction personne: juste !
— VLgn(1, 4) = Me.CBxFonctionPers '<-- Ajout code Fonction personne: juste !
— Oubli de rappeler le casque juste créé. J'aurais attendu juste après CL.Actualiser mais avant CalcProchIdCsq ceci:
If NouveauCasque Then Me.CBxIdCasq.Text = ProchIdCsq. Mais de toute façon ça n'aurais pas été très sûr comme fonctionnement. J'ai réécrit tout ce qui touche à l'actualisation dans une procédure ActualiserTout qui intègre aussi le code de CalcProchIdCsq.
— Oubli d'une CBxFonctionPers_Change() pour informer HabiliterContrôles d'un changement de cette ComboBox.
— Pas mal les KeyPress, à un détail près: Toujours .SelStart >= 0 donc pas besoin de If pour mettre systématiquement en majuscule.
— And CBxFonctionPers <> TexteVide devient inutile si elle n'est plus prise en charge par CL parce que la Sub Indépendante prend soin de l'enlever du sujet brut. Mais tu aurais été fortiche d'arriver à voir ça ! TexteVide est une variable Public du module MSujetCBx dont la valeur conventionnelle sert à distinguer une ComboBox non renseignée d'une renseignée à un rien existant sur quoi on veut filtrer le reste.
— CBnEchap.Caption = "Annuler" '--> Mis CBnEchap eu lieu de CBnValider mais pas sur de moi!: Juste ! et il y a assez de choses justes pour que tu puisse devenir un peu plus sûr de toi !
— Quand même aussi oublié dans InfosAssociéesPareilles de détecter If VLgn(1, 4) <> Me.CBxFonctionPers.Text Then Exit Function
Je vais maintenant fusionner tout ça avec ce que j'ai fait de mon coté.
À+