ComboBoxList qui ne marche pas

Bonsoir, je vous demande votre aide pour quelques petits problèmes sur un formulaire de saisie.

J'ai deux combobox qui correspondent respectivement pour le premier à "code" (colone A) et "Civilité" (colone B).

• Le problème c'est que pour civilité la liste M. , Mme. et Mlle ne se déroule pas.

• Et que le combobox "code" ne se met pas à jour au fil des saisies (et même pas du tout) et je possède un bouton modifier qui ne marche pas non plus du même coup.

Voici mon fichier pour plus de clarté

Je vous remercie d'avance pour votre aide.

Salut,

Pour remplir ton ComboBox2, je te propose de passer par une liste en F1:F3 de la feuille ‘Ressources’, liée à un ‘Nom’ et inscrit dans la propriété ‘RowSource’ de ton ComboBox2. Est-ce que ‘Mademoiselle’ n’est pas un peu démodé ?

Pour ton ComboBox1, je te propose pratiquement la même solution, mais avec une liste dynamique basée sur les données de la colonne A de la Feuil1.

En l’état actuel ton code bloque si tu choisis une ‘Civilité’ puis un ‘Code’, mais ce n’est pas l’objet de ta question.

Evite de nous fournir tes fichiers au format .rar, c’est assez compliqué à les ouvrir. Essaie d’abord de les comprimer.

A te relire.

Merci pour ta réponse Yvouille.

Pour le combobox2 ça marche parfaitement. Et je te l'accorde 'Mlle' est un peu hors d'usage au jour d'aujourd'hui, si ça dépendait seulement de moi je l'aurais supprimer... mais ça ne dépend pas que de moi

Et pour ce qu'il s'agit du combobox1 ta solution marche également, à part que ça bloque au niveau de la modification et comme tu l'a souligner si on choisis d'abord la 'civilité' puis le 'code' là aussi ça bloque.

Voici l'erreur d'exécution quand je sélectionne un code déjà rentré pour modifier une ligne :

Je remet mon fichier, cette fois-ci sans être compressé:

Et je te remercie encore pour ton aide.

Re,

A mots couverts je t’ai indiqué que je voulais bien t’aider à résoudre les problèmes exposés dans ton premier message ci-dessus, mais que je ne voulais pas spécialement continuer à t’aider avec les nouveaux problèmes qui surgiraient après coup.

Comme tu me le demandes quand même, voici quelques réflexions :

- Tu sembles avoir obtenu de l’aide pour certains code - comme le code ‘Private Sub UserForm1_Initialize()’ - et tu sembles avoir voulu en récupérer des parties comme pour ton autre code ‘Private Sub UserForm_Initialize()’, mais un peu au petit bonheur la chance. Maintenant ce premier code ‘Private Sub UserForm1_Initialize()’ semble absolument plus utilisé et on se demande pourquoi il reste en place. On se demande également pourquoi la personne qui t’a aidé à préparer ce premier code ne veut ou ne peut plus t’aider.

- Dans ce code semble-t-il inutile ‘Private Sub UserForm1_Initialize()’, il y a les deux lignes de code

   ComboBox2.ColumnCount = 1 ' Pour la liste déroulante Civilité
    ComboBox2.List() = Array(" ", "M.", "Mme", "Mlle")

La première ligne ci-dessus semble tout à fait inutile, par contre la deuxième ligne serait une meilleure solution pour remplir le ComboBox2 que la solution que je t’ai proposée hier avec cette liste sur la feuille ‘Ressources’ (ça fait moins d'étapes quand même ). J’ai donc modifié ton code actuel ‘Private Sub UserForm_Initialize()’ en utilisant l’instruction ComboBox2.List() = Array(" ", "M.", "Mme", "Mlle"), après y avoir enlevé la partie " ", qui n’apporte selon moi pas grand chose.

Tu demandes de l’aide en parallèle sur d’autres fils du Forum et c’est un peu embêtant car on ne sait pas si ce que l’on construit sur ton fil 1 est démonté sur ton fil 2. Tu devrais te limiter à un seul fil et à un seul fichier. D’ailleurs tes fichiers semblent ne pas correspondre au fichier réel et on a parfois l’impression qu’ils sont faits à la va-vite, comme on peut le constater dans le titre du dernier fichier fourni.

Dans le code de la Feuil1, tu as la macro

Private Sub CommandButton1_Click()
Call Formulaire
End Sub

et dans le module 1 tu as la macro

Sub Formulaire()
UserForm1.Show vbModeless
End Sub

Ce détour semble parfaitement inutile et peut être remplacé par la macro unique

Private Sub CommandButton1_Click()
UserForm1.Show vbModeless
End Sub

Lorsque tu choisis un item dans ta ComboBox1, ton code bloque sur la ligne ComboBox2 = Ws.Cells(Ligne, "B") car ta variable Ws n’est pas renseignée. Tu devrais avoir une ligne de code au-dessus du genre Set Ws = Sheets(xxxxxxxx). Mais comme je te l’ai dit, si je t’aide sur ce nouveau problème, un autre va probablement surgir encore.

Je te laisse donc voir si mes dernières corrections te conviennent et – si oui – je te propose que tu indiques ce fil comme résolu et que tu en ouvres un autre pour tes prochains problèmes, après avoir nettoyé ton fichier (en supprimant les macros et les formes inutiles, comme ton UserForm ‘Photo’).

Amicalement.

Bonjour.

Une autre suggestion.

Vous pourriez remplacer mademoiselle, madame et monsieur par genre1, genre2, genre3, etc.

::-))

forumexcel a écrit :

Bonjour.

Une autre suggestion.

Vous pourriez remplacer mademoiselle, madame et monsieur par genre1, genre2, genre3, etc.

::-))

Ta suggestion est notée

Et encore merci Yvouille, je met le sujet en résolu.

Rechercher des sujets similaires à "comboboxlist qui marche pas"