OVH Cloud OVH Cloud

Numérotation de pages

2 réponses
Avatar
CHAPUT Christian
Bonjour,

Dans un classeur, j'ai une feuille de calcul comprenant beaucoup de pages.
Je souhaite numéroter mes pages sans passer par la numérotation qui se fait
en entête ou pied-de-page, mais en récupérant le numéro de chaque page dans
une cellule de la feuille elle-même. Je sèche.

Comptant sur votre aide, merci d'avance

2 réponses

Avatar
papou
Bonjour
En dehors d'une fonction VBA personnalisée ce n'est pas possible.
En voici une :
Function NumeroPageCellule()
Dim VPC As Integer, HPC As Integer
Dim VPB As VPageBreak, HPB As HPageBreak
Dim NumPage As Integer

If ActiveSheet.PageSetup.Order = xlDownThenOver Then
HPC = ActiveSheet.HPageBreaks.Count + 1
VPC = 1
Else
VPC = ActiveSheet.VPageBreaks.Count + 1
HPC = 1
End If
NumPage = 1
For Each VPB In ActiveSheet.VPageBreaks
If VPB.Location.Column > ActiveCell.Column Then Exit For
NumPage = NumPage + HPC
Next VPB
For Each HPB In ActiveSheet.HPageBreaks
If HPB.Location.Row > ActiveCell.Row Then Exit For
NumPage = NumPage + VPC
Next HPB
NumeroPageCellule = NumPage
End Function

Il te suffit ensuite d'entrer la formule =NumeroPageCellule() dans la
cellule où tu veux afficher ton No de page.
Cordialement
Pascal


"CHAPUT Christian" a écrit dans le
message de news:
Bonjour,

Dans un classeur, j'ai une feuille de calcul comprenant beaucoup de pages.
Je souhaite numéroter mes pages sans passer par la numérotation qui se
fait

en entête ou pied-de-page, mais en récupérant le numéro de chaque page
dans

une cellule de la feuille elle-même. Je sèche.

Comptant sur votre aide, merci d'avance




Avatar
CHAPUT Christian
merci beaucoup, ça me va parfaitement.
"papou" a écrit dans le message news:

Bonjour
En dehors d'une fonction VBA personnalisée ce n'est pas possible.
En voici une :
Function NumeroPageCellule()
Dim VPC As Integer, HPC As Integer
Dim VPB As VPageBreak, HPB As HPageBreak
Dim NumPage As Integer

If ActiveSheet.PageSetup.Order = xlDownThenOver Then
HPC = ActiveSheet.HPageBreaks.Count + 1
VPC = 1
Else
VPC = ActiveSheet.VPageBreaks.Count + 1
HPC = 1
End If
NumPage = 1
For Each VPB In ActiveSheet.VPageBreaks
If VPB.Location.Column > ActiveCell.Column Then Exit For
NumPage = NumPage + HPC
Next VPB
For Each HPB In ActiveSheet.HPageBreaks
If HPB.Location.Row > ActiveCell.Row Then Exit For
NumPage = NumPage + VPC
Next HPB
NumeroPageCellule = NumPage
End Function

Il te suffit ensuite d'entrer la formule =NumeroPageCellule() dans la
cellule où tu veux afficher ton No de page.
Cordialement
Pascal


"CHAPUT Christian" a écrit dans le
message de news:
Bonjour,

Dans un classeur, j'ai une feuille de calcul comprenant beaucoup de
pages.


Je souhaite numéroter mes pages sans passer par la numérotation qui se
fait

en entête ou pied-de-page, mais en récupérant le numéro de chaque page
dans

une cellule de la feuille elle-même. Je sèche.

Comptant sur votre aide, merci d'avance