OVH Cloud OVH Cloud

Ré-apparition intempestive de la BO XL

5 réponses
Avatar
ManBas
Bonsoir à tous,
Mon classeur a un environnement avec une BO spécifique crée à l'ouverture.
Lors de l'affichage des graphiques à partir d'un userform, la BO XL
(fichier, édition, affichage,...) ré-apparait sans que je comprenne
pourquoi, et sans que je puisse l'en empêcher.
Voici le code:

Private Sub OptionButton1_Click()
Application.ScreenUpdating = False
With Sheets("TCD")
.Visible = True
.Select
.PivotTables("Tableau croisé dynamique1").RefreshTable
End With
Sheets("Graphe1").Visible = True
Sheets("Graphe1").Select
'la réapparition de la BO survient ici
Application.ScreenUpdating = True
Application.CommandBars("Worksheet Menu Bar").Enabled = False ' cette ligne
est incapable de faire disparaitre la BO

Qu'en pensez-vous ?
Merci d'avance.

5 réponses

Avatar
LSteph
Bonsoir,

.Enabled= False sert à désactiver , pas à faire disparaître.
.Visible= false

devrait le faire.

Cordialement.

lSteph

Bonsoir à tous,
Mon classeur a un environnement avec une BO spécifique crée à l'ouverture.
Lors de l'affichage des graphiques à partir d'un userform, la BO XL
(fichier, édition, affichage,...) ré-apparait sans que je comprenne
pourquoi, et sans que je puisse l'en empêcher.
Voici le code:

Private Sub OptionButton1_Click()
Application.ScreenUpdating = False
With Sheets("TCD")
.Visible = True
.Select
.PivotTables("Tableau croisé dynamique1").RefreshTable
End With
Sheets("Graphe1").Visible = True
Sheets("Graphe1").Select
'la réapparition de la BO survient ici
Application.ScreenUpdating = True
Application.CommandBars("Worksheet Menu Bar").Enabled = False ' cette ligne
est incapable de faire disparaitre la BO

Qu'en pensez-vous ?
Merci d'avance.





Avatar
ManBas
Merci LSteph.
Sans résultat avec visibleúlse comme avec enabled: la BO est bien présente
en plus de ma BO perso. !
Je ne comprends pas du tout.
Pourquoi la BO réapparait-elle (et demeure) lors de la sélection d'une
feuille avec un graphique?
Avec un détail supplémentaire: dans le pas à pas au cours de la macro elle
disparait avant de ré-apparaitre.

Private Sub OptionButton1_Click()
Application.ScreenUpdating = False
With Sheets("TCD")
.Visible = True
.Select
.PivotTables("Tableau croisé dynamique1").RefreshTable 'ici la BO rebelle
disparait lors du pas à pas
End With
Sheets("Graphe1").Visible = True
Sheets("Graphe1").Select 'la réapparition de la BO survient ici
Application.ScreenUpdating = True
Application.CommandBars("Worksheet Menu Bar").Enabled = False ' cette ligne
est incapable de faire disparaitre la BO

Une bonne année pour toi.


"LSteph" a écrit dans le message de news:

Bonsoir,

.Enabled= False sert à désactiver , pas à faire disparaître.
.Visible= false

devrait le faire.

Cordialement.

lSteph

Bonsoir à tous,
Mon classeur a un environnement avec une BO spécifique crée à
l'ouverture.
Lors de l'affichage des graphiques à partir d'un userform, la BO XL
(fichier, édition, affichage,...) ré-apparait sans que je comprenne
pourquoi, et sans que je puisse l'en empêcher.
Voici le code:

Private Sub OptionButton1_Click()
Application.ScreenUpdating = False
With Sheets("TCD")
.Visible = True
.Select
.PivotTables("Tableau croisé dynamique1").RefreshTable
End With
Sheets("Graphe1").Visible = True
Sheets("Graphe1").Select
'la réapparition de la BO survient ici
Application.ScreenUpdating = True
Application.CommandBars("Worksheet Menu Bar").Enabled = False ' cette
ligne
est incapable de faire disparaitre la BO

Qu'en pensez-vous ?
Merci d'avance.








Avatar
LSteph
Bonjour Manbas,
??
Application.CommandBars("Barre de menus Feuille de calcul").visible = False
ou bien
Application.CommandBars(1).visible= False

Mais peut-être à placer ici:

Private Sub OptionButton1_Click()
Application.CommandBars(1).visible= False
Application.ScreenUpdating = False
'...

'Cdlt

LSteph


Merci LSteph.
Sans résultat avec visibleúlse comme avec enabled: la BO est bien présente
en plus de ma BO perso. !
Je ne comprends pas du tout.
Pourquoi la BO réapparait-elle (et demeure) lors de la sélection d'une
feuille avec un graphique?
Avec un détail supplémentaire: dans le pas à pas au cours de la macro elle
disparait avant de ré-apparaitre.

Private Sub OptionButton1_Click()
Application.ScreenUpdating = False
With Sheets("TCD")
.Visible = True
.Select
.PivotTables("Tableau croisé dynamique1").RefreshTable 'ici la BO rebelle
disparait lors du pas à pas
End With
Sheets("Graphe1").Visible = True
Sheets("Graphe1").Select 'la réapparition de la BO survient ici
Application.ScreenUpdating = True
Application.CommandBars("Worksheet Menu Bar").Enabled = False ' cette ligne
est incapable de faire disparaitre la BO

Une bonne année pour toi.


"LSteph" a écrit dans le message de news:

Bonsoir,

.Enabled= False sert à désactiver , pas à faire disparaître.
.Visible= false

devrait le faire.

Cordialement.

lSteph

Bonsoir à tous,
Mon classeur a un environnement avec une BO spécifique crée à
l'ouverture.
Lors de l'affichage des graphiques à partir d'un userform, la BO XL
(fichier, édition, affichage,...) ré-apparait sans que je comprenne
pourquoi, et sans que je puisse l'en empêcher.
Voici le code:

Private Sub OptionButton1_Click()
Application.ScreenUpdating = False
With Sheets("TCD")
.Visible = True
.Select
.PivotTables("Tableau croisé dynamique1").RefreshTable
End With
Sheets("Graphe1").Visible = True
Sheets("Graphe1").Select
'la réapparition de la BO survient ici
Application.ScreenUpdating = True
Application.CommandBars("Worksheet Menu Bar").Enabled = False ' cette
ligne
est incapable de faire disparaitre la BO

Qu'en pensez-vous ?
Merci d'avance.











Avatar
ManBas
Bonsoir LSteph,

Reprise du fil aprés ma journée de travail.
Les 2 formulations sont sans effet.

La BO semble indissociable des pages dans lesquelles ont été crées des
graphiques.

J'ai contourné le problème, partiellement, en recopiant le graphe sur une
page normale, et en utilisant les propriétés WorksheetActivate pour mettredu
code.
ça fonctionne... sauf pour les GCD: dès que l'on ouvre les sélections des
champs dynamiques la BO revient. Elle disparait lorsque je clique sur une
cellule en dehors du graphique. Donc l'application n'est pas encore
protégée.

Je cherche aussi une solution encore plus foireuse: un userform qui masque
la BO. Je sais obtenir la résolution de l'écran (donc conditionner les
dimensions du uf et la macro à la hauteur minimum souhaitée).
Il me faut trouver une solution pour reprogrammer la résolution à
l'ouverture du classeur (je ne sais pas si c'est possible).


"LSteph" a écrit dans le message de news:

Bonjour Manbas,
??
Application.CommandBars("Barre de menus Feuille de calcul").visible =
False
ou bien
Application.CommandBars(1).visible= False

Mais peut-être à placer ici:

Private Sub OptionButton1_Click()
Application.CommandBars(1).visible= False
Application.ScreenUpdating = False
'...

'Cdlt

LSteph


Merci LSteph.
Sans résultat avec visibleúlse comme avec enabled: la BO est bien
présente en plus de ma BO perso. !
Je ne comprends pas du tout.
Pourquoi la BO réapparait-elle (et demeure) lors de la sélection d'une
feuille avec un graphique?
Avec un détail supplémentaire: dans le pas à pas au cours de la macro
elle disparait avant de ré-apparaitre.

Private Sub OptionButton1_Click()
Application.ScreenUpdating = False
With Sheets("TCD")
.Visible = True
.Select
.PivotTables("Tableau croisé dynamique1").RefreshTable 'ici la BO
rebelle disparait lors du pas à pas
End With
Sheets("Graphe1").Visible = True
Sheets("Graphe1").Select 'la réapparition de la BO survient ici
Application.ScreenUpdating = True
Application.CommandBars("Worksheet Menu Bar").Enabled = False ' cette
ligne est incapable de faire disparaitre la BO

Une bonne année pour toi.


"LSteph" a écrit dans le message de news:

Bonsoir,

.Enabled= False sert à désactiver , pas à faire disparaître.
.Visible= false

devrait le faire.

Cordialement.

lSteph

Bonsoir à tous,
Mon classeur a un environnement avec une BO spécifique crée à
l'ouverture.
Lors de l'affichage des graphiques à partir d'un userform, la BO XL
(fichier, édition, affichage,...) ré-apparait sans que je comprenne
pourquoi, et sans que je puisse l'en empêcher.
Voici le code:

Private Sub OptionButton1_Click()
Application.ScreenUpdating = False
With Sheets("TCD")
.Visible = True
.Select
.PivotTables("Tableau croisé dynamique1").RefreshTable
End With
Sheets("Graphe1").Visible = True
Sheets("Graphe1").Select
'la réapparition de la BO survient ici
Application.ScreenUpdating = True
Application.CommandBars("Worksheet Menu Bar").Enabled = False ' cette
ligne
est incapable de faire disparaitre la BO

Qu'en pensez-vous ?
Merci d'avance.














Avatar
ManBas
ça y est: j'ai rajouté
Dim CmdB As CommandBar
For Each CmdB In Application.CommandBars
CmdB.Enabled = False
Next CmdB

et là ça le fait !


"LSteph" a écrit dans le message de news:

Bonjour Manbas,
??
Application.CommandBars("Barre de menus Feuille de calcul").visible =
False
ou bien
Application.CommandBars(1).visible= False

Mais peut-être à placer ici:

Private Sub OptionButton1_Click()
Application.CommandBars(1).visible= False
Application.ScreenUpdating = False
'...

'Cdlt

LSteph


Merci LSteph.
Sans résultat avec visibleúlse comme avec enabled: la BO est bien
présente en plus de ma BO perso. !
Je ne comprends pas du tout.
Pourquoi la BO réapparait-elle (et demeure) lors de la sélection d'une
feuille avec un graphique?
Avec un détail supplémentaire: dans le pas à pas au cours de la macro
elle disparait avant de ré-apparaitre.

Private Sub OptionButton1_Click()
Application.ScreenUpdating = False
With Sheets("TCD")
.Visible = True
.Select
.PivotTables("Tableau croisé dynamique1").RefreshTable 'ici la BO
rebelle disparait lors du pas à pas
End With
Sheets("Graphe1").Visible = True
Sheets("Graphe1").Select 'la réapparition de la BO survient ici
Application.ScreenUpdating = True
Application.CommandBars("Worksheet Menu Bar").Enabled = False ' cette
ligne est incapable de faire disparaitre la BO

Une bonne année pour toi.


"LSteph" a écrit dans le message de news:

Bonsoir,

.Enabled= False sert à désactiver , pas à faire disparaître.
.Visible= false

devrait le faire.

Cordialement.

lSteph

Bonsoir à tous,
Mon classeur a un environnement avec une BO spécifique crée à
l'ouverture.
Lors de l'affichage des graphiques à partir d'un userform, la BO XL
(fichier, édition, affichage,...) ré-apparait sans que je comprenne
pourquoi, et sans que je puisse l'en empêcher.
Voici le code:

Private Sub OptionButton1_Click()
Application.ScreenUpdating = False
With Sheets("TCD")
.Visible = True
.Select
.PivotTables("Tableau croisé dynamique1").RefreshTable
End With
Sheets("Graphe1").Visible = True
Sheets("Graphe1").Select
'la réapparition de la BO survient ici
Application.ScreenUpdating = True
Application.CommandBars("Worksheet Menu Bar").Enabled = False ' cette
ligne
est incapable de faire disparaitre la BO

Qu'en pensez-vous ?
Merci d'avance.