Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Maximiser l'affichage 2

3 réponses
Avatar
icarius
Bonjour,

J'ai déjà posé une question sur ce sujet la semaine dernière et je remercie
Yves HAENNI pour la réponse très complète qu'il m'a apportée, malheureusement
un peu compliquée pour moi.

J'ai crée un outil Excel comportant plusieurs feuilles de format différents.
La feuille toto occupe la plage "A1:J23", la feuille TITI occupe la plage
"A1:M32"...etc. Je l'ai développé avec ma résolution d'écran actuelle (1440
par 900) et j'ai fait en sorte que toutes les informations apparaissent sur
chaque feuille sans utiliser les ascenseurs (que j'ai désactivés) Je voudrais
que quelle que soit la taille ou la résolution de l'écran sur lequel cet
outil sera utilisé, chaque feuille occupe la surface maxi. J'ai trouvé sur ce
forum un certain nombre de réponse qui pourraient répondre (presque) à mon
besoin mais ça ne marche que pour une feuille. Je ne dois pas mettre les
lignes au bon endroit!!
J'ai essayé de mettre dans Feuil1(toto), fenêtre "Worksheet", rubrique
"Activate" le code suivant:
-------------------------------------------------------------
Private Sub Worksheet_Activate()
Range("A1:J23").Select
ActiveWindow.Zoom = True
Range("A1").Select
End Sub
--------------------------------------------------------------------------
La même chose dans Feuil2(TITI) avec la plage "A1:M32"...etc
mais ça ne marche pas
Par contre, si je crée un bouton sur chaque feuille et que je lui associe
le même code, j'obtiens le résultat escompté. Je pourrais me contenter de ça,
mais j'aimerais comprendre pourquoi ça ne se fait pas automatiquement à
l'ouverture de la feuille (évènement "Activate").
Si quelqu'un peut me l'expliquer, je me coucherais moins bête ce soir. Ceci
étant, je débute en VBA, n'hésitez pas à détailler !!!


TEROM

3 réponses

Avatar
isabelle
bonjour Terom,

j'ai exécuté ton code et cela fonctionne correctement,
qu'est ce qui ne va pas ? y a t'il un message d'erreur ?

isabelle


icarius a écrit :
Bonjour,

J'ai déjà posé une question sur ce sujet la semaine dernière et je remercie
Yves HAENNI pour la réponse très complète qu'il m'a apportée, malheureusement
un peu compliquée pour moi.

J'ai crée un outil Excel comportant plusieurs feuilles de format différents.
La feuille toto occupe la plage "A1:J23", la feuille TITI occupe la plage
"A1:M32"...etc. Je l'ai développé avec ma résolution d'écran actuelle (1440
par 900) et j'ai fait en sorte que toutes les informations apparaissent sur
chaque feuille sans utiliser les ascenseurs (que j'ai désactivés) Je voudrais
que quelle que soit la taille ou la résolution de l'écran sur lequel cet
outil sera utilisé, chaque feuille occupe la surface maxi. J'ai trouvé sur ce
forum un certain nombre de réponse qui pourraient répondre (presque) à mon
besoin mais ça ne marche que pour une feuille. Je ne dois pas mettre les
lignes au bon endroit!!
J'ai essayé de mettre dans Feuil1(toto), fenêtre "Worksheet", rubrique
"Activate" le code suivant:
-------------------------------------------------------------
Private Sub Worksheet_Activate()
Range("A1:J23").Select
ActiveWindow.Zoom = True
Range("A1").Select
End Sub
--------------------------------------------------------------------------
La même chose dans Feuil2(TITI) avec la plage "A1:M32"...etc
mais ça ne marche pas
Par contre, si je crée un bouton sur chaque feuille et que je lui associe
le même code, j'obtiens le résultat escompté. Je pourrais me contenter de ça,
mais j'aimerais comprendre pourquoi ça ne se fait pas automatiquement à
l'ouverture de la feuille (évènement "Activate").
Si quelqu'un peut me l'expliquer, je me coucherais moins bête ce soir. Ceci
étant, je débute en VBA, n'hésitez pas à détailler !!!


TEROM





Avatar
TEROM
Bonjour Isabelle,

Je n'aipas demessage d'erreur, mais rien ne se passe quand j'accède à la
page concernée via un lien hypertexte. Le code marche si je l'associe à un
bouton, mais pas en automatique. Je ne suis pas famillier de VBA, mais je
pensait qu'un code mis dans une worsheet à la rubrique activate s'executait
automatiquement quand cette page était ouverte !!!
j'ai du rater quelque chose.

merci de t'être penchée sur mon problème.

Terom


"isabelle" wrote:

bonjour Terom,

j'ai exécuté ton code et cela fonctionne correctement,
qu'est ce qui ne va pas ? y a t'il un message d'erreur ?

isabelle


icarius a écrit :
> Bonjour,
>
> J'ai déjà posé une question sur ce sujet la semaine dernière et je remercie
> Yves HAENNI pour la réponse très complète qu'il m'a apportée, malheureusement
> un peu compliquée pour moi.
>
> J'ai crée un outil Excel comportant plusieurs feuilles de format différents.
> La feuille toto occupe la plage "A1:J23", la feuille TITI occupe la plage
> "A1:M32"...etc. Je l'ai développé avec ma résolution d'écran actuelle (1440
> par 900) et j'ai fait en sorte que toutes les informations apparaissent sur
> chaque feuille sans utiliser les ascenseurs (que j'ai désactivés) Je voudrais
> que quelle que soit la taille ou la résolution de l'écran sur lequel cet
> outil sera utilisé, chaque feuille occupe la surface maxi. J'ai trouvé sur ce
> forum un certain nombre de réponse qui pourraient répondre (presque) à mon
> besoin mais ça ne marche que pour une feuille. Je ne dois pas mettre les
> lignes au bon endroit!!
> J'ai essayé de mettre dans Feuil1(toto), fenêtre "Worksheet", rubrique
> "Activate" le code suivant:
> -------------------------------------------------------------
> Private Sub Worksheet_Activate()
> Range("A1:J23").Select
> ActiveWindow.Zoom = True
> Range("A1").Select
> End Sub
> --------------------------------------------------------------------------
> La même chose dans Feuil2(TITI) avec la plage "A1:M32"...etc
> mais ça ne marche pas
> Par contre, si je crée un bouton sur chaque feuille et que je lui associe
> le même code, j'obtiens le résultat escompté. Je pourrais me contenter de ça,
> mais j'aimerais comprendre pourquoi ça ne se fait pas automatiquement à
> l'ouverture de la feuille (évènement "Activate").
> Si quelqu'un peut me l'expliquer, je me coucherais moins bête ce soir. Ceci
> étant, je débute en VBA, n'hésitez pas à détailler !!!
>
>
> TEROM
>
>
>



Avatar
isabelle
bonjour Terom,

TEROM a écrit :
je pensait qu'un code mis dans une worsheet à la rubrique activate s'executait
automatiquement quand cette page était ouverte !!!
j'ai du rater quelque chose.



non non, tu n'as rien raté, en voici la preuve :
http://cjoint.com/?iBcEp7P8iM

isabelle