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

Menu accueil sans barre menu

XC2ONE

XLDnaute Junior
Bonjour à Tous,

Je voudrais connaître la procédure pour afficher sur la totalité de l'écran (pas de barre menu, plus aucune visu d'Excel) un UserForm d'accueil à l'ouverture du fichier. J'ai essayé plein de choses mais rien ne marche correctement.

Mon problème doit résider dans l'initialisation du UserForm lancé automatiquement dans la procédure Private Sub Workbook_Open().

Merci de votre aide,

Bon week end à vous.
 

XC2ONE

XLDnaute Junior
Super, ça marche, juste un dernier petit truc, comment enlever la barre du haut avec la croix de fermeture, je sais neutraliser la croix mais pas supprimer la visu de cette barre...

Merci en tout cas...
 

Eric C

XLDnaute Barbatruc
Re le forum
Re les intervenant(e)s

Pour clôturer le chapître, quoique tout n'a peut être pas été dit mais sujet bien cerné, pour répondre à la demande de XC2ONE qui demande la suppression pure & simple de la barre de titre de son USF (Cela ressemblera désormais à une feuille XL sans barre de menus ni d'outils) & au grand dam de Maître Ti (Utilisation d'API) :


Code:
Voici le code à copier dans un module & dans le userform:

Option Explicit
Private Declare Function FindWindow Lib 'user32' Alias 'FindWindowA' _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowLong Lib 'user32' Alias _
'GetWindowLongA' (ByVal hWnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib 'user32' Alias 'SetWindowLongA' _
(ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function DrawMenuBar Lib 'user32' (ByVal hWnd As Long) As Long
Private Declare Function SendMessage Lib 'user32' Alias 'SendMessageA' _
(ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long _
, lParam As Any) As Long
Private Declare Function ReleaseCapture Lib 'user32' () As Long



Private Sub UserForm_Initialize()
Dim hWnd As Long, Style As Long

hWnd = FindWindow(vbNullString, Me.Caption)
Style = GetWindowLong(hWnd, -16) And Not &HC00000
SetWindowLong hWnd, -16, Style
DrawMenuBar hWnd
End Sub

P.S : Ne pas oublier de prévoir une 'porte de sortie'
Bon fin de Ouikand à toutes & à tous
 

pascalmou

XLDnaute Junior
bonjour
cela a l'air d'etre bien mais comment aire ensuite une modification sur tel ou tel feuille quand on est le concepteur de l'application.

Merci

Message édité par: pascalmou, à: 09/03/2005 13:17
 

XC2ONE

XLDnaute Junior
Bonjour,

J'ai créer un petit icône sur le USF d'acceuil avec mot de passe qui me permet d'atteindre une sheet puis d'atteindre VBA. Ne pas oublier d'activer un bouton de fermeture et de sauvegarde dans ce USF.

Faut mieux pas se tromper dans la phase de Test car c'est un peu le bordel.

Il y a tjs une solution : si le fichier en s'ouvrant s'affiche en plein écran et qu'il n'y a plus de possibilité d'atteindre le code, c'est de le fermer, ouvrir une feuille vierge, faire ALT + F11 et enfin d'ouvrir le dit fichier puis dans le VBA par la combinaison des touches ALT + TAB...

On finit tjs par s'en sortir.

Bon courage
 

Jam

XLDnaute Accro
Salut à tous,

Je prend le train en marche mais c'est juste un p'tit truc pour la phase de test de XC2ZONE:

Si tu ne veux pas lancer le code au démarrage, il suffit de maintenir la touche MAJUSCULE appuyée quand on lance le classeur
Tout bon 'hacker' XL connaît ce little tip
 

XC2ONE

XLDnaute Junior
Salut Mr EXCEL,

mais c'est vrai, je ne m'en sers jamais, je suis bien con des fois. Je me souviens de ça du temps des XLM sous EXCEL 4. Oublié...

Par contre, y a t il un moyen de neutraliser cette action pour un utilisateur qui pourrait connaître cette astuce..

Merci Mr Excel
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Hello ce Fil

Si Ti passe par là, il va tous vous enguirlander, mais comme c'est moi qui passe en premier je vous le dis (et répète) aussi...

Arrêtez de trafiquer Excel dans tous les Sens et respecter les machines et configurations de vos utilisateurs, il faut les prendre pour des gens responsables, et si ils veulent mettre le casin dans vos applis; si c'est vraiment volontairement, ils y arriveront quand même !

Donc voilà, et pour bloquer la possibilité d'enfoncer et garder la Touche MAJ enfoncée par Macro VBA avant que VBA ne s'exécute... c'est impossible à moins :

[li]Soit de prendre un marteau et de casser les Touches de SHIFT de tous les claviers...[/li]
[li]Soit de le faire en VBS (ou un autre programme externe) mais là on arrive presque à expliquer comment faire des virus ![/li]

Voilà c'est mon point de vue, en tant que professionnel.

Bon Après Midi
@+Thierry

Message édité par: _Thierry, à: 09/03/2005 16:07
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…