Problem de suppression d'onglet si contrôles presents

Bonjour tout le monde

J'aurais besoin de votre aide s'il vous plait.

Dans le cadre de mon activité professionnelle, j'ai créé un formulaire de demande de services. Lorsque la demande est envoyée via une macro, une barre de progression apparaît. Maintenant, je souhaiterais supprimer les onglets non utilisés (masqués). Je sais faire cela en vba sans problème mais je rencontre une difficulté liée à la présence de boutons, de cases à cocher etc. sur les onglets cachés.

En effet, pendant le traitement de l'envoi de la demande, la barre de progression apparaît bien mais disparaît avant la fin du traitement sans message d'erreur. Perplexe, je refais une tentative mais en supprimant manuellement les boutons, le problème persiste.

Le fichier contient plusieurs modules et formulaires, pensant que j'avais fais une erreur quelque part, j'ai créé un fichier test sur lequel j'ai mis quelques boutons et cases à cocher sur une feuille que j'ai masqué puis j'y ai intégré le code de suppression des onglets masqués. J'ai importé également ma barre de progression. Le problème est identique.

Si je retire les boutons de la feuille et que je ré-ouvre le fichier après sauvegarde, le problème n'apparaît pas.

J'ai fais des recherches et j'ai demandé de l'aide sur d'autres forums spécialisés.

Soit j'ai mal exposé mon problème soit il est plus complexe que je ne le croyais. En effet, Je n'ai eu qu'un seul retour et peu encourageant dans la mesure où la personne m'a informé qu'elle passait la main à qui voudrait bien reprendre le cas car pas de solution trouvée.

J'utilise la version d'Excel : 2003 - SP3 sous Windows xp pro.

Je vous remercie de l'aide que vous voudrez bien m'apporter

27test-pour-forum.zip (23.62 Ko)

Bonjour

Etonnant n'est il pas vrai ?

Pas trouvé le pourquoi du comment, j'ai fait plein de test, c'est pas qu'elle soit masquée qui gène c'est sa suppression

Alors comme emplâtre sut un jambe de bois je te propose cette idée :

1) Dissocier la suppression des feuilles et ta ProgressBar

2) Associer la suppression à la fermeture de ton Userform1 ( Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) )

Des spécialistes trouveront l'explication, de mon côté c'est tout pour le moment

Merci Banzai64 pour ta réponse.

Si j'ai bien compris, je ne peux appliquer ta solution car durant la progression de la barre, il y a une sauvegarde du fichier.

Je m'explique :

L'utilisateur complète la demande et clique sur une option Envoyer la Demande. A partir de là, le fichier est enregistré et envoyé via Lotus Notes à une personne ou à un service. Pendant tout ce temps, la barre de progression défile.

Si je souhaite supprimer des onglets non utilisés, c'est pour réduire la taille du fichier avant l'envoi de la demande.

Petite précision : je ne suis pas développeur mais je bidouille et je m'en sors gràce à des forums comme le vôtre , tout cela pour dire que je ne sais pas trop comment utiliser ta solution, histoire de voir ce que cela fait. Toutefois, je vais tenter la manoeurvre.

Merci encore

Bonjour

Une idée rapide comme ça

Tu crées un classeur avec les feuilles désirées que tu envoies, ensuite tu détruis ce classeur

A voir

Bonjour,

Pour compléter mon explication sur le formulaire utilisé :

l'utilisateur complète la demande => selon le besoin :

1 => part pour validation chez un valideur

Si validation, part pour traitement chez un service

Envoi d'une prise en compte par le service

Envoi d'informations après traitement

etc...

- 2=> part pour traitement chez un service

Envoi d'une prise en compte par le service

Envoi d'informations après traitement

etc...

Tout cela pour écrire qu'il y a un module par étape plus des userforms et que si je crée un classeur pour recopier les feuilles, cela va être difficile.

J'espère être clair et dans tous les cas, merci pour ton aide.

Bonjour à tous,

Pour en revenir au problème, cela vient du fait que les boutons que tu crées sont des contrôles ActiveX.

Pour éviter ce désagrément, utilise plutôt des boutons de la barre d'outils Formulaires

Merci pour ta réponse.

Je vais tester de ce pas et je reviens vers vous.

.. Je viens de faire le test, le problème persiste .

Je viens également de faire le test et la progressbar ne disparait pas ! Un problème de version d'excel ??

Voici une capture d'écran :

capture

désolé, c'est de ma faute car je n'ai pas quitté Excel et réouvert mon fichier après avoir changé les boutons.

Effectivement, le problème n'apparaît pas.

Je pense qu'il va falloir que j'adapte tous mes onglets en fonction maintenant...

Sait-on pourquoi il y a ces problèmes avec les contrôles Active X ?

Dans tous les cas, je te, vous remercie.

C'est un problème reconnu par microsoft et qui empêche le mode pas à pas.

Voir ici (page en anglais)

Merci à tout le monde pour votre aide

Rechercher des sujets similaires à "problem suppression onglet controles presents"