Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

inserer cellule en en-tête

B

Bini

Guest
Bonjour
Je souhaiterai insérer le résultat d'un calcul (par exemple le nb total d'adhérents) dans l'en-tête du document excel afin qu'il s'affiche sur toutes les pages. Comment faire apparaître la cellule résultat à l'intérieur de l'en-tête ?
Merci à tous.
 
G

Gérard DEZAMIS

Guest
Bonjour Bini

A placer dans VBE de la feuille concernée

Private Sub Worksheet_Activate()
ActiveSheet.PageSetup.RightHeader = Range("B45")
End Sub

Ton resultat étant évidemment dans la cellule B45 !

@+ GD
 
M

myDearFriend

Guest
Bonjour Bini, Gérard.


Je me permets juste une petite remarque supplémentaire :

A mon avis, il n'est pas nécessaire de mettre à jour cet en-tête à chaque activation de la feuille mais seulement au moment de l'impression. Par ailleurs, je pense qu'une mise à jour de cet entête juste avant l'impression permet d'être sûr d'avoir les dernières données prises en compte. En effet, l'évenement Worksheet_Activate() ne réagit qu'à l'activation de la feuille, c'est à dire qu'une fois cette feuille activée, il est tout à fait possible d'y modifier des données (la cellule B45 par exemple) sans réaction de l'événement Worksheet_Activate() et par conséquent, sans mise à jour de l'entête.

Il vaut peut-être mieux utiliser l'évènement Workbook_BeforePrint() de l'objet ThisWorkbook pour gérer cette mise en page.

Par exemple, si le compteur se situe dans la cellule B45 de la feuille 2 et qu'il convient d'imprimer la feuille 1 :

Private Sub Workbook_BeforePrint(Cancel As Boolean)
   If ActiveSheet.Name = "Feuil1" Then
      ActiveSheet.PageSetup.RightHeader = Sheets(2).Range("B45")
   End If
End Sub


Cordialement.

Didier_mDF
 

Discussions similaires

Réponses
11
Affichages
419
Réponses
6
Affichages
391
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…