Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Rendre feuille "unique" invisible

  • Initiateur de la discussion Initiateur de la discussion fredh
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

fredh

XLDnaute Occasionnel
Bonjour a tous

voila j'ai un classeur Excell avec une seule feuille et des user forms.
je me suis baser sur un travail d'un forumeur (Fredric Lhommé) pour developper mon fichier.

A l'ouverture du fichier je voudrais que la feuille soit masquer Or excell ne veut absolument afficher au moins une feuille.
Existe t'il une fonction VBA pour contourner ce probleme.

Cette feuille contient mon annuaire que je remplis par des userforms.
Un userforms pour remplir ma base de donnée et un autre pour visualiser different champs puis un appel qui demasque ma feuille pour editer la base de donnée.

Je voudrais donc n'afficher que mes userforms et pas la feuille "annu" dans le fond.

J'ai deja rencontrer des fichier excell sans feuille visible donc apparement c'est faisable
 
Re : Rendre feuille "unique" invisible

Il y a une solution simple pour masquer Excel en arrière plan, c'est d'utiliser la propriété Visible de l'objet Application.
Ainsi, dans ton Userform, tu peux ajouter les deux macros suivantes et ça suffira

Private Sub UserForm_Initialize()
Application.Visible = False
End Sub

Private Sub UserForm_Terminate()
Application.Visible = True
End Sub


Evidemment, si ton userform plante, tu risques de ne pas avoir la propriété Visible remise à True, mais alors, il suffit de relancer Excel et tout rentre dans l'ordre contrairement à ce qui se passe quand on trafique les barres de menu.
 
Re : Rendre feuille "unique" invisible

Bonjour Ti, Dan, re le Fil

Oui tout à fait Thierry, cette propriété Visible de l'application... Mais j'ai eu des soucis avec des plantages en réseaux où les utilisateurs se trouvaient avec une dizaines de sessions Excel à cause de ça... Et des fichiers en Read Only et tout le sbinz qui suit ensuite etc etc...

Depuis je ne l'utilise plus mais il est vrai aussi que depuis j'ai un peu appris à faire des codes qui plantent moins souvent lol !!!

Sinon (comme d'hab) dacodac pour la SPBO (Société Protectrice des Barres d'Outils)

Bien à vous et bon 15/08

@+Thierry
 
Re : Rendre feuille "unique" invisible

Bonjour,

Je ne sais pas si je viens en retard par rapport à toutes les propositions, et j'avoue avoir lu entre les lignes tous les posts.

(Cela doit être la même solution de Ti), pour n'afficher aucune feuille d'un classeur ouvert, et qui ne soit pas une XLA, il suffit de cliquer sur le menu
Fenêtre/Masquer.
Cette option est sauvegardée dans le fichier, masquer/quitter Excel/valider l'enregistrement. Le fichier réouvert n'affiche aucune fenêtre, mais le fichier est bien présent.

@+Jean-Marie
 
Re : Rendre feuille "unique" invisible

Bonsoir Ti et JeanMarie

Ti ton code me plait beaucoup, je vais l'utiliser.
J'ai 3 Userforms dont le premier qui appelle les deux autres:
Ex du premier je peut aller * dans le deuxieme et le 3em userforms + dans uen feuille d'edition.

Du deuxieme et troisieme userforms je ne peut que retourner au 1er
Depuis la feuille d'edition j'ai un bouton pour retourner au 1er Userforms.

Questions dois je faire cela /
Private Sub UserForm_Initialize()
Application.Visible = False
End Sub

Private Sub UserForm_Terminate()
Application.Visible = True
End Sub pour chaque Userforms ou bien as tu une astuce pour alleger le code est ne le faire que avec par ex Workbook_Open() et Workbook_BeforeClose() ?
 
Re : Rendre feuille "unique" invisible

Re,
Personnellement, pour simplifier les choses, j'appellerais le premier userform depuis une macro située dans un module standard, en faisant précéder l'ouverture du userform par un Application.Visible = False, et en remettant Application.Visible à True en fin de traitement, ainsi dans tes userforms tu n'as plus à t'occuper de quoi que ce soit.

Voici ce que peut donner ta macro

Sub LancerForm
Application.Visible = False
UserForm1.Show
Application.Visible = True
End Sub

Et tu peux supprimer les lignes Application.Visible = ... dans tous tes userforms

Limitation : il faut que ton UserForm1 soit affiché en modal, sinon tu repasseras immédiatement en Visible = True.
 
Re : Rendre feuille "unique" invisible

Bonjour le forum
Je travaille en suisse alors aujourd'huit je n'ai pas congé.

Ti jai tenter d'appliquer tes conseil mais je n'y suis pas arriver.
J'y suis arriver autrement.
Je joint mon fichier pour que vous puissiez y jeter un oeil et apporter vos remarques. (j'ai traduit les fonctions principale en francais)
Je rapelle que j'ai utiliser des codes recuperer a gauche et a droite sur le forum mais je ne me rapelle plus les auteurs (donc excusez moi de ne pas les citer).
J'ai quelque soucis sur mon fichier :

* en mode recherche quand j'arrive a la fin de la liste (aller dans recherche puis fleche bas) mon curseur descend dans les different champs malgrer que j'ai mis Tabstop=false dans ces champs.

* en mode edition j'ai une feuille que adapte la largeur des colonnes. Mais j'aimerai que la colonne 2 ne descende pas en dessous d'une certaine valeur, parce que en B1 j'ai mis un bouton pour retourner dans le menu et si la colonne retrecis ce bouton retrecie aussi.

* dans les userforms il y a un bouton (crois rouge) fermer. Est il possible de l'eliminer ou bien si action sur celui ci de fermer le fichier et repasser en mode Application.Visible = true
J'ai bien la fonction Private Sub Menu_QueryClose() mais si je met Application.Visible = true , ActiveWorkbook.Save et ActiveWorkbook.Close
ca ne vas pas car a chaque "dechargement" de userforms (par ex Unload Menu, Neue.Show) ca me ferme mon fichiers excell et plus moyens de rentrer dans VBA.

* peut on mettre un mot de passe pour acceder en mode edition ?

* peut on proteger l'acces en mode VBA parce que dans ma boite il y a beaucoup "d'apprentis sorcier comme moi...)

Merci encore pour tout vos conseil
 

Pièces jointes

Re : Rendre feuille "unique" invisible

Allez et un petit Up!

Je repose les meme questions donc voir le message precedent; plus une nouvelle suite a la nouvelle versions de mon fichier :

* J'ai opter pour afficher un userforms au lancement du fichier qui permet le choix de langue.
Je suis un peu embeter car j'ai du doubler tout mes userforms, j'aurai bien aimer n'en faire qu'un par userforms mais avec des boutons visible ou pas suivant la langue selectionner.

* J'aimerai rendre le mode d'edition seulement accesible par mot de passe
pouvez vous me dire ce que vous pensez de ma methode ? le mot de passe est marquer dans le msgbox

* J'aimerai rendre mes macros inacessible en visualisation pour les autres utilisateurs, pouvez vous aussi me guider la dessus

Merci a tous
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…