Effacement de la saisie dans une combobox ->crash

Bonjour chers forumeurs,

Après avoir navigué et consulté à de nombreuses reprises le forum afin de m'aider dans la réalisation d'un formulaire VBA, je m'adresse à vous car j'ai un souci assez contraignant:

Lorsque j'efface le contenu de certaines de mes combobox, EXCEl cesse de fonctionner et me renvoi au bureau sans au préalable me dire où se trouve le souci dans mon code.

Je me tourne donc vers vous pour m'éclaircir car je ne trouve pas de post traitant d'un souci semblable et qui me donnerait une piste pour résoudre mon problème.

Vous trouverez donc ci-joint mon fichier EXCEL contenant mon USERFORM qui se déclenche lorsque l'on clique sur le bouton "Formulaire Client" se trouvant sur la feuille Formulaire...

Le but de mon formulaire est de gérer une base de données relativement simple sur EXCEL concernant des clients et des réparations de smartphones et tablettes.

L'USERFORM se compose d'un multi-page de 4 pages permettant d'ajouter des clients, des appareils, des réparations et d'effectuer des recherches dans la base de données pour justement retrouver un client, un appareil ou une réparation.

Dans un souci d'efficacité j'ai des combobox en cascade (Marque->Modèle->Pièces; Client->Appareil(s)->Réparation(s); etc.) et lorsque l'on fait un choix dans l'une des combobox, ce dernier se répète dans toutes les combobox portant le même intitulé.

Jusque là je n'ai aucun souci...

Mais dès que je sélectionne dans la listbox de la combobox une des proposition et que cette dernière est en surbrillance "bleue" et que j'appuie sur la touche DELETE pour effacer donc le choix ou la saisie rentrée dans cette dernière: CRASH -> EXCEL a cessé de fonctionné!

J'espère avoir décrit correctement mon problème et que vous pourrez m'aider

N'hésitez pas à me demander plus de détails ou des captures d'écran pour imager mes propos ou encore un descriptif de la version d'EXCEL ou de mon système d'exploitation ou autre!

J'ai essayé d'être complet sans non plus tomber dans l'abus LOL

En attente de vos réponses et un tout grand merci d'avance

Bien à vous!

33rapports-gestion.xlsm (172.88 Ko)

En continuant à travailler dessus, je me suis rendu compte que quand je mettais en commentaire les lignes concernant le fait d'associer la valeur de la combobox aux combobox ayant même intitulé, le souci n'avait pas lieu!

Mon problème viendrait donc des lignes de codes semblables à celles-ci:

'If ComboBox1.Text = ComboBox18.Text And ComboBox28.Text = ComboBox18.Text And ComboBox37.Text = ComboBox18.Text Then Exit Sub

'ComboBox1.Text = ComboBox18.Text

'ComboBox28.Text = ComboBox18.Text

'ComboBox37.Text = ComboBox18.Text

J'espère que ça vous aidera à trouver d'où vient mon problème.

J'ai remarqué que ça avait lieu avec les combobox en cascade dont la valeur sert à implémenter la listbox d'autres combobox...

Ex: La combobox code client (ComboBox18) pour l'ajout d'appareil qui permet d'implémenter la combobox code appareil (ComboBox19).

Encore merci pour l’intérêt que vous portez à mon post et pour vos réflexions.

En espérant trouver une solution

Bien à vous.

Bonjour à vous tous,

Je galère toujours à trouver un moyen de reporter la sélection/saisie faite dans une combobox dans les autres portant le même intitulé sans que cela ne crash EXCEL au moment d'une ré-sélection ou de l'effacement de la saisie dans la combobox.

Est-ce que quelqu'un aurait une idée, une piste pour m'aider à trouver une solution à mon problème?

Merci d'avance et bonne journée à vous.

En attente de réponse de votre part,

Bien à vous.

Bonjour

Pour orienter les recherches détailles les opérations à faire pour arriver au plantage

Merci beaucoup pour votre accueil

Alors le plantage arrive à plusieurs occasions:

Page "Client-Appareil", si après avoir fait l'une ou plusieurs sélections successives dans la liste de ma combobox Code Client (partie appareil), j'appuie sur la touche DELETE ou BACKSPACE alors que la sélection est en surbrillance bleue (pour effacer le contenu dans le but de faire une entrée manuelle) -> CRASH!

Page "Réparation", si après avoir fait une sélection dans la combobox Code Client ainsi que dans celle du Code Appareil, j'efface de la même façon que précédemment le contenu -> CRASH! Cela lui arrive également de se planter sans que j'essaie d'effacer le contenu mais simplement en procédant à plusieurs changement de sélection dans sa liste (fort aléatoire et crash non-systématique).

Page "Données réparation technicien", même problème que précédemment.

Il me semble que c'est chaque fois avec des combobox en cascade et dont j'essaie de "dupliquer" la sélection faite dans l'une vers les autres combobox portant le même intitulé (ex: choix fait dans la combobox Code client Page "Client-Appareil", il est "copié" dans la combobox Code client de la page "Réparation" et dans celle "Données réparation technicien").

Voilà j'espère avoir su vous expliquer clairement les causes provocant le CRASH!

Je suis à votre entière disposition s'il vous fallait de plus amples explications

Encore un tout grand merci de vous pencher sur mon problème

Bonjour

Je pense que c'est un problème du serpent qui se mord la queue

Tu modifies une ComboBox ( numéro 1) qui modifies la ComboBox ( numéro 2) qui elle modifie la ComboBox ( numéro 1) et ça recommence Ad Vitam Plantage

Je t'ai modifié juste le code de la macro Private Sub ComboBox18_Change() : Voir le début et la fin

Plus une déclaration d'une variable

Il n'y a plus de plantage pour le 1er cas ( mais je pense que la réparation n'est pas complète)

Je pense que cette solution est à placer dans toutes les ComboBox susceptibles d'être modifiées par d'autres

mais je n'ai pas suivi tout ton code et ce n'est peut-être pas la meilleure solution

Merci beaucoup

Je vais essayer ta proposition et te ferai part du retour

Encore merci!

Malheureusement le problème est toujours le même :s Cela crash même dès que l'on refait une sélection dans la combobox 18 après avoir fait une sélection dans la 19...

J'avais aussi pensé que c'était le serpent qui se mordait la queue et c'était pour ça que j'avais les lignes de code suivantes:

'If ComboBox1.Text = ComboBox18.Text And ComboBox28.Text = ComboBox18.Text And ComboBox37.Text = ComboBox18.Text Then Exit Sub

'ComboBox1.Text = ComboBox18.Text

'ComboBox28.Text = ComboBox18.Text

'ComboBox37.Text = ComboBox18.Text

Mais ça ne résolvait pas mon problème...

Bonjour,

Après ce week-end de repos, je me replonge sur mon soucis...

Toujours pas trouvé comment le résoudre

Est-ce que vous pensez que c'est dû à mes combobox en cascade?

Ne serait-ce pas lié au fait que les rowsource changent en fonction des combobox liées dont la valeur de l'une donne le rowsource de l'autre?

Je suis sincèrement désolé de peut-être émettre des pistes erronées :s Mais je ne suis pas vraiment calé ...

Bonne journée à vous.

Bonjour

Pas évident

Il faudrait suivre ton code pas-à-pas pour trouver ce qui gène

Je suis persuadé que c'est une histoire de boucle sans fin, mais sans reprendre tout le code je ne peux le certifier

Et dans ce cas c'est un vrai boulot, vu la complexité de ton code

Désolé mais je ne me sens pas le courage de tout suivre

Merci beaucoup de t'y être penché dessus

J'espère que d'autres personnes s'intéresseront également à mon souci et que certains auront un peu plus le temps pour analyser mon code.

Je continue de mon côté à chercher

Bonne journée à vous

Bonjour à vous tous

J'ai réussi à résoudre mon problème de crash

C'était à cause d'une boucle sans fin...

La condition que j'avais mise pour qu'il exécute la copie de la valeur d'une combobox dans les autres portant le même intitulé; était toujours vraie...

Malheureusement, je n'ai pas trouvé une condition qui me permettait de sortir de la boucle...

J'ai donc contourné le problème et rajouté des commandbuttons et quelques lignes de code pour arriver au résultat que je souhaitais

Je vous remercie pour vous être penché dessus et pour votre aide.

A bientôt

Rechercher des sujets similaires à "effacement saisie combobox crash"