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

XL 2019 Suppression ou cache de la barre des entêtes Excel dans une macro

Didier Quilghini

XLDnaute Nouveau
Bonjour le Forum,
J'ai crée un petit programme personnalisé de Gestion de Micro-Entreprise pour mon amie.
Ce dernier est maintenant terminé mais il reste un petit souci.
Mon amie - comme tout utilisateur - curieuse- (curieux)- est tentée d'aller voir ce qui se passe dans le programme, au risque de foutre la pagaille malgré toutes les protections que j'ai placées.
Alors la question que je vous pose est la suivante : Comment cacher cette barre des titres Excel où apparaissent :

J'ai cherché de partout mais en vain ...... avant de venir vous solliciter
Je suis sur Excell 2019, 64bits (visiblement cette information est importante pour ce problème (il y a des solutions pour 32bits mais pas 64bits).
Merci pour votre attention et bon dimanche
Cdt
Didier
 

Staple1600

XLDnaute Barbatruc
Re

=>Yeahou
[/aparté]
Je voulais simplement dire que puisque cela appartient à l'entreprise quand le salarié part et que l'outil est protégé cela peut poser problème.
Donc pour ce qui me concerne, je ne protège pas.
[/aparté]
Sinon tu as vu que ce je dis dans le message#14?
 

Staple1600

XLDnaute Barbatruc
Re

=>Yeahou
Sauf que le fichier finit par s'ouvrir et que je n'ai pas de menus
(Tu disais que cela ne fonctionnait que sur les *.xslm et xlsb pas sur les *.xlsx)
NB: Dans cet exemple, je mettais juste dans la peau d'un utilisateur "novice" d'Excel qui aurait fait un Enregistrer sous -> *.xlsx
 

Didier Quilghini

XLDnaute Nouveau
Bonsoir Yeahou
Tout d'abord merci pour ton attention à ma demande.
Cela dit, je suis bien arrivé à tout désactiver, ascendeurs, ruban, menu etc. sauf .... sauf .... la barre tout en haut, la barre des titres où apparait nom de fichier (que j'ai remplacé par autre chose) et les fameuses icones réduction dimension et la croix.
Ce sont ces trois chose que je souhaite faire disparaître.
Merci d'avance su tu as une solution cat je sèche complétement la dessus
Cdt
Didier
 

Didier Quilghini

XLDnaute Nouveau
mapomme ... aucun problème, chacun s'exprime et c'est très bien de mon point de vue.
Cdt
Didier
 

cp4

XLDnaute Barbatruc
par contre si tu veux t'y essayer (et je te le conseille), ce n'est jamais assez précisé qu'il faut faire très attention à la syntaxe. Une minuscule qui devrait être en majuscule et cela ne fonctionne pas.
Merci beaucoup pour ton partage d'expérience. Je vais effectivement faire au moins un essai.
Si j'ai bien compris c'est utilitaire de Microsoft. Mais bizarrement, je n'ai pas trouvé de lien de téléchargement sur son site. J'en ai trouvé un sur Developpez.com.

Bonne soirée.
 

Staple1600

XLDnaute Barbatruc
Re

En général, je fais confiance à mes ami(e)(s)
Et si je leur file un classeur Excel pour leur propre usage, bah ils l'utilisent simplement pour ce pourquoi il a été fait.
Et si une amie était curieuse, elle en aura vite marre de me payer l'apéro pour que je vienne réparer le truc
(surtout si je m'éternise et que je reste à souper pour en loucedé lui faire comprendre d'arrêter de trifouiller la bête (*))


(*) on aura compris que je parle du classeur
 

Bernard_XLD

XLDnaute Barbatruc
Membre du Staff
Bonsoir le fil

Désolé de répondre tardivement mais il a fallu que je m'occupe de la vie courante.
Et je persiste, dans tous les cas de figure, les menus personnalisés XML ne fonctionneront pas sur un Xlsx , c'est d'ailleurs exactement ce qu'il se passe. Si le menu personnalisé avait été plus complexe, l'affichage aurait été quand même uniquement le menu fichier et toute l'interface zappée. Un utilisateur qui transforme la nature d'un fichier ne peut pas s'attendre à ce qu'il fonctionne bien quand même. D'autant plus que je ne vois aucun intérêt à faire un menu personnalisé sur un fichier sans macro.

Bien cordialement
 

Bernard_XLD

XLDnaute Barbatruc
Membre du Staff
Je vais effectivement faire au moins un essai.
pour Cp4 (au fait t'as pas changé de pseudo ? je ne me souvenais pas de celui la pour toi), n'hésites pas à me solliciter si tu as des questions, les premiers essais peuvent être compliqués.
Si j'ai bien compris c'est utilitaire de Microsoft. Mais bizarrement, je n'ai pas trouvé de lien de téléchargement sur son site. J'en ai trouvé un sur Developpez.com.
il n'est plus maintenu par Crosoft mais reste parfaitement fonctionnel et évite d'écrire le code Xml dans un éditeur de texte pour l'insérer manuellement dans le fichier.
 

Staple1600

XLDnaute Barbatruc
Re

=>Yeahou
Ce que je voulais dire c'est qu'on peut se retrouver avec un fichier *.xlsx avec un menu désactivé.
Je parlais d'éventuels biais qui pourrait survenir avec un utilisateur novice.

NB: Je précise également que je ne critique ni ta proposition, ni les possibilités offertes par CustomUI.
(Je préfère préciser pour éviter le quiproquo )
 

Bernard_XLD

XLDnaute Barbatruc
Membre du Staff
tu as aussi dit dans ton premier post
Je suis sur Excell 2019, 64bits (visiblement cette information est importante pour ce problème (il y a des solutions pour 32bits mais pas 64bits).
tu as essayé cela ?
ça fonctionne bien, tu sais, j'ai désactivé la croix sans problème sous Excel 64 bits avec une librairie 32 bits
 

Bernard_XLD

XLDnaute Barbatruc
Membre du Staff
voici un exemple fonctionnel sous Excel 64 pour désactiver la croix de fermeture
VB:
Option Explicit
Private Declare PtrSafe Function GetSystemMenu Lib "User32" (ByVal hWnd As Long, ByVal bRevert As Long) As Long
Private Declare PtrSafe Function DeleteMenu Lib "User32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
Private Declare PtrSafe Function FindWindowA Lib "User32" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Sub Desactive_Croix()
    Dim Retour_Val As Long
    On Error Resume Next
    Retour_Val = FindWindowA(vbNullString, Application.Caption)
    If Retour_Val <> 0 Then
      'désactive la croix de fermeture d'Excel et la commande Fermeture du menu système
      DeleteMenu GetSystemMenu(Retour_Val, False), 6, &H400
    End If
End Sub
Public Sub Active_Croix()
    Dim Retour_Val As Long
    On Error Resume Next
    'rétablit la croix de fermeture d'Excel et la commande Fermeture du menu système
    Retour_Val = FindWindowA(vbNullString, Application.Caption)
    GetSystemMenu Retour_Val, True
End Sub
 

cp4

XLDnaute Barbatruc
Bonjour,

@Yeahou : je porte toujours le même nom et prénom depuis que je suis né. il en est de même pour mon pseudo depuis mon inscription. J'ai juste ajouté un avatar customisé à mon goût.

Merci pour ton conseil. En effet, je ne l'ai pas trouvé sur Crosoft. Je l'ai trouvé sur developpez.com.

Encore merci.

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