VBA: Comment retirer les ascenseurs d'une seule feuille excel ?

Résolu
mod77
Messages postés
1277
Date d'inscription
vendredi 10 juillet 2009
Statut
Membre
Dernière intervention
28 mars 2021
- 4 nov. 2012 à 14:19
mod77
Messages postés
1277
Date d'inscription
vendredi 10 juillet 2009
Statut
Membre
Dernière intervention
28 mars 2021
- 5 nov. 2012 à 09:25
Bonjour,

Je souhaite retirer l'ascenseur vertical d'une seule feuille Excel, comme ce n'est possible qu'en VBA,

Quelqu'un peut-il m'aider SVP? Merci.

21 réponses

bigfish_le vrai
Messages postés
1835
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
20 novembre 2013
12
4 nov. 2012 à 15:37
Salut,

le code suivant est mettre dans le code de "ThisWorkBook"

Option Explicit

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    If Sh.Name "Feuil1" Then ActiveWindow.DisplayVerticalScrollBar False
End Sub

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
    If ActiveWindow.DisplayVerticalScrollBar False Then ActiveWindow.DisplayVerticalScrollBar True
End Sub

Private Sub Workbook_WindowActivate(ByVal Wn As Window)
    If Wn.ActiveSheet.Name "Feuil1" Then Wn.DisplayVerticalScrollBar False
End Sub

Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
    If Wn.DisplayVerticalScrollBar False Then Wn.DisplayVerticalScrollBar True
End Sub


"Feuil1" est à remplacer par le nom de la feuille qui doit être gérée par ce code.

A+
3
mod77
Messages postés
1277
Date d'inscription
vendredi 10 juillet 2009
Statut
Membre
Dernière intervention
28 mars 2021

4 nov. 2012 à 17:54
voila:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    If Sh.Name "Application" Then ActiveWindow.DisplayHorizontalScrollBar False
End Sub

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
    If ActiveWindow.DisplayHorizontalScrollBar False Then ActiveWindow.DisplayHorizontalScrollBar True
End Sub

Private Sub Workbook_WindowActivate(ByVal Wn As Window)
    If Wn.ActiveSheet.Name "Application" Then Wn.DisplayHorizontalScrollBar False
End Sub

Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
    If Wn.DisplayHorizontalScrollBar False Then Wn.DisplayHorizontalScrollBar True
End Sub
3
Charles Racaud
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
4 nov. 2012 à 19:02
Bonsoir,

Barre de menu donc office <= 2003
Application.DisplayExcel4Menus = False


Pour le "ruban"
Application.ExecuteExcel4Macro "Show.ToolBar(""Ribbon"", False)"


_____________
Kenji
3
Charles Racaud
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
4 nov. 2012 à 21:24
"F5 sur la macro", je veux dire placer le curseur sur la fonction et l'exécuter.

Sinon, oui si tu préfère, tu peux définir une touche raccourcis à ta macro sur les options de celle-ci (menu outils > macro un truc du genre)


_____________
Kenji
3

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mod77
Messages postés
1277
Date d'inscription
vendredi 10 juillet 2009
Statut
Membre
Dernière intervention
28 mars 2021

4 nov. 2012 à 16:54
bonjour bigfish_le vrai,

Merci pour ces lignes, ça marche!
0
mod77
Messages postés
1277
Date d'inscription
vendredi 10 juillet 2009
Statut
Membre
Dernière intervention
28 mars 2021

4 nov. 2012 à 17:10
Cependant, pour enlever l'ascenseur horizontal, j'ai fais un copier collé en remplaçant vertical par horizontal mais j'ai un message d'erreur "nom ambigu détecté: workbook activate"

pouvez-vous m'aider svp?
0
bigfish_le vrai
Messages postés
1835
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
20 novembre 2013
12
4 nov. 2012 à 17:25
re,

montre le code !

A+
0
mod77
Messages postés
1277
Date d'inscription
vendredi 10 juillet 2009
Statut
Membre
Dernière intervention
28 mars 2021

4 nov. 2012 à 18:19
ça y est ! ça marche !
J'ai mis chaque ligne avec les autres plutôt que séparés.

Merci à toi!
0
mod77
Messages postés
1277
Date d'inscription
vendredi 10 juillet 2009
Statut
Membre
Dernière intervention
28 mars 2021

4 nov. 2012 à 18:31
Néanmoins, peux-tu m'indiquer s'il est possible de retirer la barre de menu de excel par le VBA STP ?
0
bigfish_le vrai
Messages postés
1835
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
20 novembre 2013
12
4 nov. 2012 à 20:20
re,

"nom ambigu détecté" car "Application" est un nom réservé au VBA !

A+
0
mod77
Messages postés
1277
Date d'inscription
vendredi 10 juillet 2009
Statut
Membre
Dernière intervention
28 mars 2021

4 nov. 2012 à 20:32
Bonsoir Charles racaud,

Merci pour l'instruction mais avant de l'essayer, je voudrais savoir comment je pourrais refaire apparaître le menu en cas de problème SVP?
Faut-il que je prévois un bouton de commande ou plutôt l'appui sur un duo de touche ou touche de fonction?
0
Charles Racaud
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
4 nov. 2012 à 20:35
Il te suffit de remplacer les False par des True

Et oui, prévois quand même une solution pour les faire réapparaitre ^^
Un bouton qui appelle la macro sinon Alt-F11 et F5 sur la macro


_____________
Kenji
0
mod77
Messages postés
1277
Date d'inscription
vendredi 10 juillet 2009
Statut
Membre
Dernière intervention
28 mars 2021

4 nov. 2012 à 21:19
Ok merci.
Mais je ne comprends pas le sens de:
"sinon Alt-F11 et F5 sur la macro " ?

Je préfèrerais une combinaison de touche
"Alt M" me conviendrais car un bouton serait une porte ouverte à de fausse manip.

Peux-tu me suggérer un code porte cela STP?
Merci.
0
mod77
Messages postés
1277
Date d'inscription
vendredi 10 juillet 2009
Statut
Membre
Dernière intervention
28 mars 2021

4 nov. 2012 à 21:44
Ok merci je ne savais pas!
Je vais changer le nom alors.
Merci bigfish_le vrai
0
mod77
Messages postés
1277
Date d'inscription
vendredi 10 juillet 2009
Statut
Membre
Dernière intervention
28 mars 2021

4 nov. 2012 à 21:49
Merci Charles Racaud, je n'avais pas vu ta réponse aussi. J'essaie ça de suite.
0
mod77
Messages postés
1277
Date d'inscription
vendredi 10 juillet 2009
Statut
Membre
Dernière intervention
28 mars 2021

4 nov. 2012 à 22:41
Finalement, j'ai planqué un togglebutton mais je ne sais pas comment mettre le code quand il est appuyer et l'inverse du code quand il est relevé. Je cherche ça sur le net. Mais je vous remercie tous les deux pour votre aide.

Je verrais plus tard, si j'ai un bon retour de mon application, comment faire en sorte de l'exécuter comme un vrai logiciel.

Merci.
0
Charles Racaud
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
4 nov. 2012 à 22:51
Si suffit de vérifier son état :

Private Sub TonToggleButton_Click()
  If TonToggleButton.Value = True Then
    Application.DisplayExcel4Menus = False
  Else
    Application.DisplayExcel4Menus = True
  End If
End Sub


comment faire en sorte de l'exécuter comme un vrai logiciel

A la base c'est un classeur Excel, tu ne peux donc pas le transformer en application. Les macros servent à automatiser des traitements et effectuer des tâches propres au document Excel.
Si tu veux faire une vraie application, utilise VB6 (ressemble beaucoup au VBA) ou les technologies récentes du moment (VB.NET, C#, C++, Java ...)

_____________
Kenji
0
mod77
Messages postés
1277
Date d'inscription
vendredi 10 juillet 2009
Statut
Membre
Dernière intervention
28 mars 2021

4 nov. 2012 à 23:20
Merci Charles Racaud,

Je viens d'essayé mais ça ne fonctionne pas!
il ne se passe rien. Je pense qu'il ne s'exécute qu'à l'ouverture non?
0
Charles Racaud
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
4 nov. 2012 à 23:24
J'ai oublié de préciser qu'i faut que tu remplace TonToggleButton par le nom de ton bouton. (aussi dans le nom de la Sub TonToggleButton_Click) et de mettre ce code dans la feuille dans laquelle se trouve ton bouton.

_____________
Kenji
0
mod77
Messages postés
1277
Date d'inscription
vendredi 10 juillet 2009
Statut
Membre
Dernière intervention
28 mars 2021

4 nov. 2012 à 23:36
Oui c'est ce que j'ai fait mais toujours rien!
0