Vba - Excel - Fenetre
Résolu/Fermé
jeremie
-
18 sept. 2014 à 14:43
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 19 sept. 2014 à 13:14
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 19 sept. 2014 à 13:14
A voir également:
- Vba - Excel - Fenetre
- Liste déroulante excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
- Word et excel gratuit - Guide
- Excel compter cellule couleur sans vba - Guide
2 réponses
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
18 sept. 2014 à 15:11
18 sept. 2014 à 15:11
Bonjour,
Voici quelques codes qui pourront vous aider :
Voici quelques codes qui pourront vous aider :
With Application .WindowState = xlNormal 'place à gauche de l'écran .Left = 0 End With With Application 'plein écran .WindowState = xlMaximized 'largeur de l'écran Dim largeur As Double largeur = .Width End With With Application 'place à droite de l'écran. 'nécessite d'avoir d'abord remplit largeur (cf ci-dessus) .WindowState = xlNormal .Left = largeur - .Width End With
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
18 sept. 2014 à 16:10
18 sept. 2014 à 16:10
Pour l'utiliser :
Doit être absolument en haut de ton module, au dessus de ta première Sub ...()
Ensuite, tu insères, dans ton module, la macro :
Ne te reste plus qu'à l'appeler, dans tes codes de boutons, lorsque tu veux masquer ou afficher le ruban.
Exemple :
Private Declare Sub keybd_event Lib "user32" ( _ ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, _ ByVal dwExtraInfo As Long)
Doit être absolument en haut de ton module, au dessus de ta première Sub ...()
Ensuite, tu insères, dans ton module, la macro :
Sub Masquer_Afficher_Ruban() 'Simule Ctrl+F1 (à lancer depuis la feuille de calcul) Const VK_CONTROL = &H11 Const VK_F1 = &H70 Const KEYEVENTF_KEYUP = &H2 keybd_event VK_CONTROL, 0, 0, 0 keybd_event VK_F1, 0, 0, 0 keybd_event VK_F1, 0, KEYEVENTF_KEYUP, 0 keybd_event VK_CONTROL, 0, KEYEVENTF_KEYUP, 0 End Sub
Ne te reste plus qu'à l'appeler, dans tes codes de boutons, lorsque tu veux masquer ou afficher le ruban.
Exemple :
Sub Passage_En_Mode_Normal_et_plein_Ecran() With Application .WindowState = xlNormal End With Call Masquer_Afficher_Ruban End Sub
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
18 sept. 2014 à 16:38
18 sept. 2014 à 16:38
Merci.
Bonne journée à toi.
Ps : si ta question est résolue, pense à l'indiquer comme telle. Dans ton premier message, il y a un lien : Marquer comme résolu, juste sous le titre de ta question. Clique dessus...
Bonne journée à toi.
Ps : si ta question est résolue, pense à l'indiquer comme telle. Dans ton premier message, il y a un lien : Marquer comme résolu, juste sous le titre de ta question. Clique dessus...
jeremie
>
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
18 sept. 2014 à 17:13
18 sept. 2014 à 17:13
J'attends d'être sur à 100% toutefois, il me reste un problème.
J'appelle la méthode que tu m'as donnée dans le this.workbook.
Je l'appelle dans workbook_activate et dans workbook_Deactivate.
Pensant que chaque fois que je vais lancer mon programme, il va me masquer la barre et que par la suite, en le fermant, il va me la réactiver. Malheureusement, ça n'a pas l'air de marché.
La démarche est elle juste ?
J'appelle la méthode que tu m'as donnée dans le this.workbook.
Je l'appelle dans workbook_activate et dans workbook_Deactivate.
Pensant que chaque fois que je vais lancer mon programme, il va me masquer la barre et que par la suite, en le fermant, il va me la réactiver. Malheureusement, ça n'a pas l'air de marché.
La démarche est elle juste ?
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
18 sept. 2014 à 18:40
18 sept. 2014 à 18:40
qu'entends tu exactement par : chaque fois que je vais lancer mon programme
jeremie
>
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
18 sept. 2014 à 19:48
18 sept. 2014 à 19:48
Si j'ai bien compris. Mon workbook_activate effectue le code que j'y ai inséré.
Donc je me dis, si je call ma methode dans l'activate et desactivate il doit exécuter.
Donc fermér la toolbox au démarrage et ouvrir à la fermeture pour que quand je démarre un autre il y a tjs la toolbox
Donc je me dis, si je call ma methode dans l'activate et desactivate il doit exécuter.
Donc fermér la toolbox au démarrage et ouvrir à la fermeture pour que quand je démarre un autre il y a tjs la toolbox
18 sept. 2014 à 15:24
Avant tous merci pour ta réponse. Le left = 0 répond parfaitement à une de mes questions.
Toutefois, je connaissais déjà l'astuce pour mettre en pleine écran, mon problème est que je désire mettre un pleine écran dans un fenêtre réduit (xlNormal). Si je suis en pleine écran et que j'execute une macro de déplacement qui réduit également l'ecran(windowstate) il me fait quitter le mode pleine écran. Ce que je ne veux pas.
Aurais tu une idée ?
Merci d'avance
18 sept. 2014 à 15:40
Ne te reste plus qu'une barre à masquer...
18 sept. 2014 à 15:53
N'y a t il pas plus simple ? Je t'avouerai ne pas comprendre grand chose sur ce bout de code.
18 sept. 2014 à 15:54
Mais cela fonctionne alors pourquoi t'en priver?
18 sept. 2014 à 15:59
Je'ai appris sur le tas à programmer en vba il me manque encore pas mal de connaissance pour cela je crois XD