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.
 

Akeya06

XLDnaute Occasionnel
Bonjour XC2ONE,

Enfin, je vais pouvoir aider quelqu'un, car vu mon niveau, c'est pas évident. Si tu veux, tu peux faire en sorte que ton USF prenne tout ton ecran. Pour cela tu vas dans les propriété de ton USF et tu indiques dans Height 648 et dans Width 864. Ca c'est pour une résolution ecran de 1152 x 864. Si ca ne va pas tu pourra ajuster à ta guise.

Voila, voila...
A+ sur le forum ;)
 

Léa

Nous a quitté
Repose en paix
bonjour,

voila un petit bout de code qui te rendra service mais qui est à utiliser avec parcimonie

Sub Auto_Open()

Dim Cmdb As CommandBar
For Each Cmdb In CommandBars
Cmdb.Enabled = True
Next Cmdb
Application.DisplayFormulaBar = True
End Sub

Sub Auto_Close()
Dim Cmdb As CommandBar
For Each Cmdb In CommandBars
Cmdb.Enabled = True
Next Cmdb
Application.DisplayFormulaBar = True

End Sub

à placer dans un Module

Je sais que Thierry nous dira qu'il vaudrait mieux les placer dans 'ThisWorkbook'
pour le premier selon l'évènement : 'Open' et le second selon l'évènement 'BeforeClose'

A toi de voir

Bon courage
 

XC2ONE

XLDnaute Junior
J'ai essayé ces procédures, mais celà ne fonctionne pas.

Le fait de lancer le UserForm au démarrage du Fichier ne me pose pas de problèmes.

En fait, j'aimerais que ce UserForm prenne tout l'écran quel que soit la taille et la résolution de l'écran, je l'ai vu dans une application tiers.

Si vous avez des idées....

A bientôt
 

Léa

Nous a quitté
Repose en paix
Bonjour Akeya06

tou comme toi j'étais plongée dans une recherche pour répondre favorablement à un problème épineux qui m'enquiquine depuis hier soir, et de ce fait même chose je ne t'ai pas vu arrivé
C'est le 'Bing' alerte de ton message qui m'a tirée de mes pensées

Alors non tu n'as pas dit de bétises, et d'ailleurs ta solution peut certainement suffire à XC2ONE
Ce que je lui ai proposé est assez dangeureux, car tu perds les barres de menu, donc par la même occasion la main sur ton Workbook
C'est pour cela que je dis bien qu'il ne faut utiliser la première routine que si on ajoute la deuxième au moment de la fermeture
Si tu en parles à Thierry, Didier and Co, tu verras leur réaction
D'ailleurs pas plus tard qu'avant hier nous avons eu un Fil élogieux à ce sujet

Dis donc il fait meilleur maintenant à Menton
Chez nous, à Limoges, c'est la galère. Moi qui pensait prendre la route Mercredi, j'hésite

Bon week-end
Bisous
 

Léa

Nous a quitté
Repose en paix
re,

XC2ONE, la solution de Akeya06, fonctionne très bien
Maintenant si tu veux l'adapter à tout type d'écran, il te faut faire une analyse de l'écran (taille) de façon à pouvoir récupérer les paramètres 'hauteur' et 'largeur'; Mais cela c'est une autre paire de manches.
Si ça t'intéresse je veux bien chercher
 
D

Dan

Guest
Bonjour,

Danger de supprimer les barres de menu, cela a déjà fait l'objet d'une multitude de posts ayant trait aux problèmes du genre 'j'ai perdu mes barres de menu...'
Bon c'est un choix mais faut savoir ce qui peux t'arriver.

Comme le dit souvent Thierry, il vaut mieux placer ces codes dans Thisworbook car les Autoclose et Autoopen sont sujets à pb et ne sont pas des macros événementielles.

Dans le code de Léa, pour l'ouverture il me semble que les instructions doivent être modifiées :

Cmdb.Enabled = True ---> doit être FALSE
Application.DisplayFormulaBar = True ----> doit être FALSE

Pour la fermeture, ces deux instructions doivent être TRUE comme l'indique Léa.

Une autre solution plus sécurisante est d'utiliser le mode plein écran en plaçant ces instructions :

Application.DisplayFullScreen = True à l'ouverture du fichier
Application.DisplayFullScreen = False à la fermeture du fichier.

Voilà quelques idées.

Si pb n'hésite pas




:)

Message édité par: Dan, à: 05/03/2005 16:42
 

Akeya06

XLDnaute Occasionnel
Rebonjour le fil,

Merci Léa de me rassurer quand à ma solution, et quand au temps qu'il fait à Menton, GGGRRRRR....

Voilà, non il pleut, il fait très froid pour la région, et il neige un peu...

Alors a+ sur le forum...
;)
 

XC2ONE

XLDnaute Junior
Léa,

En effet, celà me paraît complexe.

En fait, en téléchargeant un fichier sur ce site 'Gestion des dossiers ICELEC', base de données qui obtient le résultat que je recherche, en regardant le code, j'ai remarqué que le UserForm avait une petite taille mais qu'en chargeant le fichier, il prennait tout l'écran sans visu d'un seul élément d'excel.

Si tu peux le consulter et en ressortir le bout de code concerné, moi je n'y suis pas arrivé.

Merci beaucoup de t'occuper de mon problème Léa...
 

Léa

Nous a quitté
Repose en paix
bonjour Dan,

Voila ce que c'est que d'abuser des copier-coller

Je partage tout à fait tes dires, d'ailleurs j'en parlait avec Akeya06

Petite question : à quels problèmes peut-on s'attendre avec les AutoOpen et AutoClose, personellement je n'en ai jamais rencontré
Si je les utilises c'est que je fais référence à la macro 'Autoexec' d'Access qui correspond à AutoOpen

A bientôt Dan
Bisous
 

XC2ONE

XLDnaute Junior
Je viens de regarder plus précisément le code concerné, tu as raison, voilà le code :

Dans le UserForm
Private Sub UserForm_Initialize()

Dim hwnd As Long, exLong As Long, zFactor As Integer, Style As Long

hwnd = FindWindowA(vbNullString, Me.Caption)
exLong = GetWindowLongA(hwnd, -16)
If exLong And &H880000 Then SetWindowLongA hwnd, -16, exLong And &HFF77FFFF
zFactor = 100 * CInt(Application.Width / Me.Width)
Me.Width = Application.Width
Me.Height = Application.Height
Style = GetWindowLong(hwnd, -16) And Not &HC00000
SetWindowLong hwnd, -16, Style
DrawMenuBar hwnd

On Error Resume Next


Dans This Worbook :

Private Sub Workbook_Open()


'nom du fichier utilisé
Call CheminFichier

'nb de fichesdans base
Call calculnombrefiches


Application.WindowState = xlMaximized
UserForm1.Show 0


End Sub

Merci
A plus tard
 

Eric C

XLDnaute Barbatruc
Bonjour le forum
Bonjour XC2ONE, bonjour Akeya06, bonjour L&a, bonjour Dan

Entre 2 services externes, brr il fait froid, voici le code qui je pense devrait convenir à XC2ONE quelle que soit la taille de l'écran :

Code:
Private sub Userform_Activate
  With Userform1
   . StartUpPosition = 3
   . Width = Application.Width
   . Height = Application.Height
   . Left = 0
   . Top = 0
 End With
    End Sub

;)
 

Dan

XLDnaute Barbatruc
Re,

Pour répondre à ta question Léa, la seule restriction pourrait-on dire est que MS les signale obsolètes. Elles ont été créées si je ne me trompe pour Excel 95 mais depuis Excel 97 et l'arrivée de VBA, ce sont les macros évenementielles qui sont utilisées.

Je ne retrouve pus le fil que m'a adressé mon ami Thierry en son temps à ce sujet ( je pense en 2003) mais j'ai toutefois retrouvé ce lien intéressant : 'AAArrrghhh Piégé par .... MOI MEME !' - Lien supprimé qui inclut notamment un fichier pour ...retrouver ses barres de menu.

Bonne lecture à tous ... ;)
 

Discussions similaires

Statistiques des forums

Discussions
312 504
Messages
2 089 090
Membres
104 027
dernier inscrit
Luc ECODIS