Zoom automatique

Résolu
mijean94 Messages postés 415 Date d'inscription   Statut Membre Dernière intervention   -  
mijean94 Messages postés 415 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Pour faire un zoom sur une zone d’un tableau peut-on remplacer les cellules B8 :C10, dans l’exemple ci-dessous, par un nom de variable qui contiendrait ces paramètres, par exemple par PLAGES


Range("B8:C10").Select
ActiveWindow.zoom = True


cordialement

6 réponses

via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Bonsoir

En mettant par exemple la plage en B1 : B8:C10, en nommant cette cellule PLAGE et en modifiant ainsi la macro :
Range(Range("PLAGE")).Select
 ActiveWindow.Zoom = True


Cdlmnt
Via
0
mijean94 Messages postés 415 Date d'inscription   Statut Membre Dernière intervention   11
 
Bonjour,

La solution de VIA55 (1) marche nickel avec les coordonnées dans une cellule. Merci

J’ai fait un essai en adaptant cette solution dans ma macro, et ça ne marche pas, y a-t-il une modification à apporter ? Merci pour vos réponses.

Voici les codes que j’ai utilisés :

Const plage = "C12:K21"

Sub Macro3()
range(range("plage")).Select
ActiveWindow.zoom = True

End Sub


Cordialement
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Re

Si la plage est une constante plage définie dans la macro le code est alors simplement :
Sub Macro3()
Range(plage).Select
 ActiveWindow.Zoom = True
End Sub


Cdlmnt
Via

"L'imagination est plus importante que le savoir."    A. Einstein
0
mijean94 Messages postés 415 Date d'inscription   Statut Membre Dernière intervention   11
 
ça marche très bien. merci

et dans le cas ou le résultat est :

Set plage = range(Cells(premlig, premcol), Cells(derlig, dercol))

cordialement
0

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

Posez votre question
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Re,

Dans ce cas la variable plage récupère les données dans une cellule dont tu as indiqué les coordonnées il doit donc y avoir dans cette cellule par ex C12:K21) et on retombe dans le cas de la 1ere macro que je t'avais indiqué

Cdlmnt
0
mijean94 Messages postés 415 Date d'inscription   Statut Membre Dernière intervention   11
 
J'ai ajouter le code dan une fonction que m'avais donnée CCM81 mais ça ne marche pas :
peut-être que je 'ai pas bien compris tes explications.


Sub zoom()
' zoom Macro
Dim derlig As Long, dercol As Long, plage As range
Dim premlig As Long, premcol As Long
derlig = Cells.Find("*", , , , xlByRows, xlPrevious).Row
premlig = Cells.Find("*", , , , xlByRows, xlNext).Row
dercol = Cells.Find("*", , , , xlByColumns, xlPrevious).Column
premcol = Cells.Find("*", , , , xlByColumns, xlNext).Column
Set plage = range(Cells(premlig, premcol), Cells(derlig, dercol))
range(range("PLAGE")).Select
ActiveWindow.zoom = True

cordialement
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746 > mijean94 Messages postés 415 Date d'inscription   Statut Membre Dernière intervention  
 
Non désolé c'est moi qui n'avais pas compris (j'aurais du!) que tu voulais définir la plage dans la macro
Donc tu remplaces
Set plage = range(Cells(premlig, premcol), Cells(derlig, dercol))
range(range("PLAGE")).Select
ActiveWindow.zoom = True

simplement par
Range(Cells(premlig, premcol), Cells(derlig, dercol)) Select
ActiveWindow.zoom = True

Cdlmnt
0
mijean94 Messages postés 415 Date d'inscription   Statut Membre Dernière intervention   11
 
Merci Via55, ça marche très bien.
j'ai rajouté un point devant Select.

Cordialement
0