IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Modification code pour Excel en Plein Ecran [XL-2007]


Sujet :

Macros et VBA Excel

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Modification code pour Excel en Plein Ecran
    Bonjour,

    Je sais ce sujet a déjà été traité. J'ai testé pas mal de codes, avec certains j'ai eu quelques soucis.

    Le code mis à notre disposition pas PMO2017 (que je remercie beaucoup pour sa gentillesse), me convient à peu de choses près.
    Si j'ai bien compris ce code fait appel aux "API", que je n'ose pas manipuler vu mes maigres connaissances en programmation.

    Donc ce code, affiche excel en plein écran dés l'ouverture de mon fichier.
    La barre des titres d'excel n'est pas visible par contre la barre des formules l'est.
    Je voudrais inverser ceci, c'est à dire rendre la barre des formules non visible et la barre de titre d'excel visible.

    Je voudrais qu'excel reste tout le temps en plein écran malgré la navigation entre feuilles par boutons.

    En vous remerciant.

    Cordialement,

    ps: le fichier se mettra en plein écran à l'ouverture, j'ai mis un bouton de sortie du mode plein écran.

    voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    'Adaptation Source : Ivan F Moala
    'http://www.mrexcel.com/forum/excel-questions/6148-possible-hide-excel-title-bar.html
     
    Private Declare Function FindWindow& Lib "user32" Alias "FindWindowA" ( _
      ByVal lpClassName As String, ByVal lpWindowName As String)
    Private Declare Function SetWindowLong& Lib "user32" Alias "SetWindowLongA" ( _
      ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long)
    Private Declare Function GetWindowLong& Lib "user32" Alias "GetWindowLongA" ( _
      ByVal hwnd As Long, ByVal nIndex As Long)
     
    Private Const GWL_STYLE = (-16)
    Private Const WS_CAPTION = &HC00000
    Private Const WS_MAXIMIZEBOX = &H10000
    Private Const WS_MINIMIZEBOX = &H20000
    Private Const WS_SYSMENU = &H80000
     
    Private Declare Function SetWindowPos& Lib "user32" ( _
      ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, _
      ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long)
     
    Private Enum ESetWindowPosStyles
      SWP_SHOWWINDOW = &H40
      SWP_HIDEWINDOW = &H80
      SWP_FRAMECHANGED = &H20
      SWP_NOACTIVATE = &H10
      SWP_NOCOPYBITS = &H100
      SWP_NOMOVE = &H2
      SWP_NOOWNERZORDER = &H200
      SWP_NOREDRAW = &H8
      SWP_NOREPOSITION = SWP_NOOWNERZORDER
      SWP_NOSIZE = &H1
      SWP_NOZORDER = &H4
      SWP_DRAWFRAME = SWP_FRAMECHANGED
      HWND_NOTOPMOST = -2
    End Enum
     
    Private Declare Function GetWindowRect& Lib "user32" ( _
      ByVal hwnd As Long, lpRect As RECT)
     
    Private Type RECT
      Left As Long
      Top As Long
      Right As Long
      Bottom As Long
    End Type
     
    Sub Title_Show()
    ShowTitleBar True
    Application.OnKey "{ESC}"
    End Sub
     
    Sub Title_Hide()
    ShowTitleBar False
    Application.OnKey "{ESC}", "ToucheEscape"
    End Sub
     
    Sub ToucheEscape(Optional dummy As Byte)
    '/// Procédure vide mais nécessaire pour le contrôle de la touche Escape (Echap) ///
    End Sub
     
    Sub ShowTitleBar(bShow As Boolean)
    Dim lStyle As Long
    Dim tRect As RECT
    Dim sWndTitle As String
    Dim xlhnd
    '// Untested should perhaps look for the class ?!
    sWndTitle = "Microsoft Excel - " & ActiveWindow.Caption
    xlhnd = FindWindow(vbNullString, sWndTitle)
    '// Get the window's position:
    GetWindowRect xlhnd, tRect
    '// Show the Title bar ?
    If Not bShow Then
      lStyle = GetWindowLong(xlhnd, GWL_STYLE)
      lStyle = lStyle And Not WS_SYSMENU
      lStyle = lStyle And Not WS_MAXIMIZEBOX
      lStyle = lStyle And Not WS_MINIMIZEBOX
      lStyle = lStyle And Not WS_CAPTION
    Else
      lStyle = GetWindowLong(xlhnd, GWL_STYLE)
      lStyle = lStyle Or WS_SYSMENU
      lStyle = lStyle Or WS_MAXIMIZEBOX
      lStyle = lStyle Or WS_MINIMIZEBOX
      lStyle = lStyle Or WS_CAPTION
    End If
    SetWindowLong xlhnd, GWL_STYLE, lStyle
    Application.DisplayFullScreen = Not bShow
    '// Ensure the style is set and makes the xlwindow the
    '// same size, regardless of the title bar.
    SetWindowPos xlhnd, 0, tRect.Left, tRect.Top, tRect.Right - tRect.Left, _
      tRect.Bottom - tRect.Top, SWP_NOREPOSITION Or SWP_NOZORDER Or SWP_FRAMECHANGED
    End Sub
    Fichiers attachés Fichiers attachés
    Dernière modification par cathodique ; 24/12/2013 à 14h48. Motif: omission

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Modif code pour PIC 16F84A
    Par bg94000 dans le forum Autres architectures
    Réponses: 1
    Dernier message: 15/01/2013, 17h54
  2. Modification code VB excel et création nouveau classeur
    Par domes85 dans le forum Général VBA
    Réponses: 4
    Dernier message: 13/01/2012, 11h41
  3. modification Code pour passer un exe en dll
    Par ehkhalid dans le forum C++
    Réponses: 4
    Dernier message: 23/01/2010, 10h38
  4. [E-07] Ouvrir excel en plein ecran
    Par chrnoe dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 12/01/2009, 14h33
  5. Affichage classeur excel en plein ecran
    Par didou78 dans le forum Excel
    Réponses: 5
    Dernier message: 17/12/2007, 10h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo