Aller à une page spécifique (Microsoft Excel)
Supposons que vous ayez une grande feuille de calcul qui nécessite 16 pages lors de l’impression. Vous vous demandez peut-être s’il existe un moyen, lorsque vous travaillez dans la feuille de calcul, de passer à une page donnée, telle que la page 5.
Les utilisateurs de Word savent qu’ils peuvent, dans Word, utiliser la boîte de dialogue Atteindre pour accéder à différentes pages, mais aucune fonctionnalité de ce type n’existe dans Excel. Il existe cependant plusieurs façons d’aborder le problème.
Une approche consiste à sélectionner la cellule qui apparaît en haut d’une page.
(Par exemple, cette cellule qui apparaît en haut à gauche de la page 5.) Vous pouvez ensuite définir un nom pour la cellule, tel que Page05. Effectuez cette opération pour chaque page de votre feuille de calcul, et vous pouvez ensuite utiliser les fonctionnalités d’Excel pour accéder à ces noms.
Vous pouvez également utiliser le mode d’aperçu des sauts de page. (Pour passer à l’aperçu des sauts de page, choisissez Affichage | Aperçu des sauts de page.) Vous pouvez ensuite voir où se trouvent les sauts de page, sélectionner une cellule de la page souhaitée, puis revenir à l’affichage normal.
Il est également possible de créer une macro qui vous permettra d’accéder à une page spécifique, mais ce n’est pas aussi simple que vous le pensez. La raison a à voir avec l’utilisation possible de sauts de page durs, qui peuvent changer le début et la fin des pages. La macro suivante pourrait cependant faire l’affaire pour vous. Il demande à l’utilisateur un numéro de page, puis sélectionne la cellule en haut à gauche de la page saisie.
Sub GotoPageBreak() Dim iPages As Integer Dim wks As Worksheet Dim iPage As Integer Dim iVertPgs As Integer Dim iHorPgs As Integer Dim iHP As Integer Dim iVP As Integer Dim iCol As Integer Dim lRow As Long Dim sPrtArea As String Dim sPrompt As String Dim sTitle As String Set wks = ActiveSheet iPages = ExecuteExcel4Macro("Get.Document(50)") iVertPgs = wks.VPageBreaks.Count + 1 iHorPgs = wks.HPageBreaks.Count + 1 sPrtArea = wks.PageSetup.PrintArea sPrompt = "Enter a page number (1 through " sPrompt = sPrompt & Trim(Str(iPages)) & ") " sTitle = "Enter Page Number" iPage = InputBox(Prompt:=sPrompt, Title:=sTitle) If wks.PageSetup.Order = xlDownThenOver Then iVP = Int((iPage - 1) / iHorPgs) iHP = ((iPage - 1) Mod iHorPgs) Else iHP = Int((iPage - 1) / iVertPgs) iVP = ((iPage - 1) Mod iVertPgs) End If If iVP = 0 Then If sPrtArea = "" Then iCol = 1 Else iCol = wks.Range(sPrtArea).Cells(1).Column End If Else iCol = wks.VPageBreaks(iVP).Location.Column End If If iHP = 0 Then If sPrtArea = "" Then lRow = 1 Else lRow = wks.Range(sPrtArea).Cells(1).Row End If Else lRow = wks.HPageBreaks(iHP).Location.Row End If wks.Cells(lRow, iCol).Select Set wks = Nothing End Sub
_Note: _
Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.
lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur]
.
ExcelTips est votre source pour une formation Microsoft Excel rentable.
Cette astuce (5823) s’applique à Microsoft Excel 97, 2000, 2002 et 2003.