Vba zoom automatique ....

Seb_67210

XLDnaute Junior
Bonjour à tous...

J'ai un p'tit soucis professionnel ... j'ai réaliser un glossaire sous excel mais j'ai un problème d'affichage, je vous explique....

Suivant la résolution des pc les personnes doivent ajuster manuellement le zoom pour pouvoir visualiser correctement mon glossaire.

Mon besoin : j'aimerais savoir comment adapter automatiquement une feuille excel suivant la résolution du pc et ainsi ne plus avoir à touche au zoom.
J'ai réaliser une macro qui change la taille des feuilles automatiquement mais c'est pas top ... j'ai inserer 2 boutons ex: Ecran 15" ou Ecran 21" ca marche mais bon...

Pouvez vous m'envoyer un bout de code qui pourrait m'aider ???

Merci d'avance.
 

Seb_67210

XLDnaute Junior
Re : Vba zoom automatique ....

Re ! ok j'ai réussi merci encore !!!!
Dis moi j'aimerais encore abusé de toi mdr ....

Sur ce glossaire j'ai des gifs animés et lorsque le zoom s'applique la fenetre dans laquelle s'affiche le gif change de taille...
Le gif reste bien indentique mais pas la fenetre et donc mon gif n'est plus centré !!!
As tu une solution stp ???

Merci encore
 

JCGL

XLDnaute Barbatruc
Re : Vba zoom automatique ....

Re,

Non, je ne trouve pas.
Il faudrait affecter le GetScreenResolution au WebBrowser

Code:
With Worksheets("WebBrowser")
    .Shapes("WebBrowser1").Top = 100
    .Shapes("WebBrowser1").Left = 50
    .WebBrowser1.Height = Mid(Resolution, 1, InStrRev(Resolution, "x") - 1)/2
    .WebBrowser1.Width = Mid(Resolution, 1, InStrRev(Resolution, "x") - 1)/2
End With
Mais j'ai un gros, gros doute...

Je t'invite à faire une recherche le Wiki de Michel XLD

A+
 
G

Guest

Guest
Re : Vba zoom automatique ....

Bonsoir Seb,
Bonsoir JC;)

Ceci placera le webBrowser au centre de la plage de cellules visibles à l'écran, avec une hauteur et une largeur égale à la moitié de la hauteur et de la largeur des cellules visibles.

Code:
Dim H, W
H = ActiveWindow.VisibleRange.Height
W = ActiveWindow.VisibleRange.Width
With WebBrowser1
    .Height = H / 2
    .Width = W / 2
    .Top = (H - .Height) / 2
    .Left = (W - .Width) / 2
End With

A+
 
G

Guest

Guest
Re : Vba zoom automatique ....

RE seb,

Je ne sais pas où tu as placé ton code qui zoom tes fenêtres.
mais normalement il faudrait que tu le places après le code qui zoom tes fenêtres.

Si ce code est ailleurs que dans le module de code de la feuille qui contient le WebBrowser il faut rajouter With Sorksheets(LeNomDeLaFeuille)
Code:
Dim H, W
 
With Worksheets("WebBrowser")
H = ActiveWindow.VisibleRange.Height
W = ActiveWindow.VisibleRange.Width
  With .WebBrowser1
    .Height = H / 2
    .Width = W / 2
    .Top = (H - .Height) / 2
    .Left = (W - .Width) / 2
  End With
End With

Mais pour éviter de tourner en rond, il vaudrait mieux nous donner un fichier exemple.

A+
 

JCGL

XLDnaute Barbatruc
Re : Vba zoom automatique ....

Bonjour à tous,
Salut Hasco :),

Cela fonctionne parfaitement.

SeB : as-tu remarqué que le code est sur l'Activate de la feuille donc navigue d'une feuille à l'autre

Pour moi sans ton fichier avec le *.gif et le WebBrowser
, c'est fini

A++ :)
A+ à tous
 

Seb_67210

XLDnaute Junior
Re : Vba zoom automatique ....

Merci de tes efforts mais si tu inserts un gif dedans tu verras que le zoom à toujours un effet dessus

Private Sub Worksheet_Activate()
Dim H, W
H = ActiveWindow.VisibleRange.Height
W = ActiveWindow.VisibleRange.Width

With WebBrowser1
.Height = H / 2
.Width = W / 2
.Top = (H - .Height) / 2
.Left = (W - .Width) / 2
End With

Dim Chemin1 As String
Chemin1 = "C:\Documents and Settings\Seb\Bureau\Logo_U4_anime_7_tps_1s.gif"
WebBrowser1.Navigate "about: <html><body scroll='no'><img src='" & Chemin1 & "' /></body></html>"

End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 962
Messages
2 093 996
Membres
105 906
dernier inscrit
Evolugame