J'utilise la fonction "Lignes à répéter en haut" de la boîte de dialogue "Mise en page" d'Excel pour m'assurer qu'un bloc d'en-tête à plusieurs lignes apparaît sur chaque page imprimée de ma feuille de calcul. Cependant, j'aimerais pouvoir modifier certains bits de l'en-tête en fonction du contenu de la page en cours. Je voudrais simplement afficher la valeur d'une cellule de la première ligne imprimée sur la page.
Si c'est mon entête:
Section: xx
Et les données ressemblent à ceci (les colonnes sont Section et Nom):
1 Foo
1 Bar
2 Baz
Je veux que le "xx" dans l'en-tête soit "1". Si, plus bas sur la page suivante, la valeur dans la colonne Section est "3", je veux que ce soit imprimé dans l'en-tête de la page suivante.
Je pensais au départ que l’utilisation de la fonction "OFFSET" pourrait aider, par exemple
= "Section:" & OFFSET (A2, 1, 0)
Mais il ne montre que le décalage par rapport à l'emplacement d'origine de l'en-tête, et ne fonctionne donc que sur la page 1.
Le document final est un fichier PDF. Je peux donc maintenant revenir avec "l'outil de retouche de texte" dans Acrobat et ajouter les valeurs page par page. Mais cela devient un processus fastidieux avec plus de 70 pages de rapports. Quelqu'un a de meilleures idées qui ne nécessitent pas que je rédige le document Excel original avec des en-têtes insérés toutes les N lignes?
Ceci est Excel 2008 pour Mac, si cela fait une différence.
la source
Vous pouvez jouer avec la création d'un nom dans le classeur contenant la formule de décalage (A2,10), puis vous pouvez le faire ... créez le nom FakeHeader = "Section:" & OFFSET (Sheet1! A2,1,0)
Ensuite, si vous utilisez ce nom = FakeHeader à l'endroit où se produisent vos pagbreaks, vous obtiendrez quelque chose de proche de ce que vous essayez de faire. Certes, cela signifie un certain contrôle de la structure de la page, mais vous pouvez diviser en sections de la manière souhaitée
la source