Afficher une page précise dans excel

cs_PHIPHI974 Messages postés 4 Date d'inscription jeudi 30 mars 2006 Statut Membre Dernière intervention 1 avril 2006 - 31 mars 2006 à 16:12
cs_PHIPHI974 Messages postés 4 Date d'inscription jeudi 30 mars 2006 Statut Membre Dernière intervention 1 avril 2006 - 1 avril 2006 à 23:08
Bonjour, j'ai besoin d'aide pour améliorer un programme de comptabilité.Dans mon classeur excel, dans certaines feuilles, chaque page correspond à un mois de l'année en cours (page 1 janvier, page 2 février ...).
Pour afficher un mois particulier je clique sur un bouton désignant le mois voulu.
j'utilise la fonction Cells(x, 1).Select qui, pour afficher les pages, va sélectionner la première cellule de la ligne x. Hors cette solution n'est pas satisfaisante car suivant la taille de l'écran utilisé, la page est décalée vers le haut ou le bas.
J'ai voulu essayer avec la commande Rows mais je n'y suis pas arrivé.
En cliquant sur le bouton mars, je veux que la page 3 de la feuille de calcul s'affiche avec la première ligne de la page en haut de l'écran de visualisation.
Est ce qu'il existe une commande qui permet d'afficher une page telle qu'elle est définie par les sauts de page ?

Merci pour votre aide.

PHIPHI 974

4 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
31 mars 2006 à 16:22
Salut,

Est ce que ce qui suit peut t'aider?

ActiveWorkbook.Sheet(NomDuMois).Range("A1").Select

Avec NomDuMois = "Mars" par exemple
@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée
0
cs_PHIPHI974 Messages postés 4 Date d'inscription jeudi 30 mars 2006 Statut Membre Dernière intervention 1 avril 2006
31 mars 2006 à 18:31
Bonjour Julien,


le problème c'est que la feuille ne porte pas le nom d'un mois mais par exemple "Bilan".


Il faut donc afficher une page de la feuille "Bilan"

Pour imprimer une feuille du mois d'avril (exemple), j'utilise la fonction suivante:
ActiveWindow.SelectedSheets.PrintOut From:=4, To:=4, Copies:=1, Collate:=True
Les commandes From et To définissent la page à imprimer : 4 pour le mois d'avril.
Je cherche donc une fonction dans le même style pour afficher la page 4 (pour Avril).

Merci pour le coup de main
Phiphi 974
0
CTAC Messages postés 133 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 8 juin 2012 5
31 mars 2006 à 19:16
Bonjour,




Si la feuille comporte 4 pages dans ce sens

1 3

2 4


Application.Goto Cells(ActiveSheet.HPageBreaks(1).Location.Row, _
ActiveSheet.VPageBreaks(1).Location.Column), True

ctac
0
cs_PHIPHI974 Messages postés 4 Date d'inscription jeudi 30 mars 2006 Statut Membre Dernière intervention 1 avril 2006
1 avril 2006 à 23:08
Bonjour et merci pour les solutions proposées.

Je ne suis pas arrivé à utiliser la proposition de CTAC, mais en cherchant dans l'aide j'ai trouvé la fonction suivante :
ActiveWindow.ScrollRow = X , "X" étant la valeur de la ligne où se trouve le saut de page.

Exemple:
pour un saut de page à la ligne 31 séparant la page 1 et 2, la commande
ActiveWindow.ScrollRow = 31 place la ligne 31 en haut de la fenêtre de visualisation de la feuille.
Il faut donc juste repérer tous les sauts de pages de la feuille et changer la valeur "X".

PHIPHI 974
0
Rejoignez-nous