Ceci est une ancienne révision du document !


\question{Comment gérer les tableaux de plus d'une page ?} %7.2

\reponse Le package \pack{supertabular} permet de d\'efinir de longs tableaux, qui seront coup\'es automatiquement par \LaTeX si n\'ecessaire, pour changer de page. L'environnement s'appelle \env{supertabular}. \`A l'int\'erieur de cet environnement, on d\'efinit le contenu du tableau de la m\^eme fa\c con que dans l'environnement \env{tabular}. On peut, en plus, utiliser les commandes suivantes : \begin{descrcmd} \item[tablefirsthead\marg{…}] qui d\'efinit le contenu de la

premi\`ere ligne du tableau ;

\item[tablehead\marg{…}] d\'efinit le contenu de la premi\`ere

ligne qui sera ins\'er\'ee en cas de changement de page au milieu du
tableau ;

\item[tabletail\marg{…}] d\'efinit le contenu de la derni\`ere

ligne d'une page, en cas de changement de page au milieu du tableau
;

\item[tablelasttail\marg{…}] d\'efinit le contenu de la

derni\`ere ligne du tableau ;

\item[topcaption\marg{…}] et \cmd{bottomcaption}\marg{…}

permettent de mettre une l\'egende sur ce tableau, soit au d\'ebut,
soit \`a la fin (ces deux commandes sont incompatibles, si l'on
utilise les deux, seule la légende de fin sera appliquée).
\cmd{tablecaption} place la l\'egende \`a sa position
\og~habituelle~\fg, qui est par d\'efaut le haut du tableau.

\end{descrcmd}

Voici un exemple : % 1 2 3 4 5X 6 %23456789012345678901234567890123456789012345678901234567890 \begin{noexemple} \begin{center}

\tablefirsthead{\hline
  \multicolumn{1}{|c}{Nombre}
  & \multicolumn{1}{c}{Nombre$^2$}
  & Nombre$^4$
  & \multicolumn{1}{c|}{!Nombre} \\ 
  \hline}
\tablehead{\hline
  \multicolumn{4}{|l|}%
              {\small\textsl{suite du tableau}}\\
  \hline
  \multicolumn{1}{|c}{ Nombre}
  & \multicolumn{1}{c}{Nombre$^2$}
  & Nombre$^4$
  & \multicolumn{1}{c|}{Nombre!} \\ 
  \hline}
\tabletail{\hline
  \multicolumn{4}{|r|}%
              {\small\textsl{%
               Suite \`a la page suivante...}}\\
  \hline} 
\tablelasttail{\hline}
\topcaption{Exemlp}
\bottomcaption{Exemple de grand tableau}
                              %   \par
\begin{supertabular}{| r@{\hspace{6.5mm}}|
    r@{\hspace{5.5mm}}| r | r|}
  1   &     1  &        1  &           1    \\
  2   &     4  &       16  &           2    \\
  3   &     9  &       81  &           6    \\
  4   &    16  &      256  &          24    \\
  5   &    25  &      625  &         120    \\
  6   &    36  &     1296  &         720    \\
  7   &    49  &     2401  &        5040    \\
  8   &    64  &     4096  &       40320    \\
  9   &    81  &     6561  &      362880    \\
  ... &    ... &      ...  &         ...    \\
\end{supertabular}

\end{center} \end{noexemple}

\reponse Le package \pack{longtable} est assez semblable au pr\'ec\'edent, mais en un peu mieux. Il permet notamment d'avoir (modulo un nombre suffisant de compilations) la m\^eme largeur de colonnes dans tout le tableau, m\^eme si celui-ci est coup\'e sur plusieurs pages. Les en-t\^etes se d\'efinissent de mani\`ere un peu diff\'erente, comme dans l'exemple suivant :

% 1 2 3 4 5X 6 %23456789012345678901234567890123456789012345678901234567890 \begin{noexemple} \begin{longtable}{|p{0.2\linewidth}|

      p{0.2\linewidth}|p{0.2\linewidth}|}
 \hline
 Premi\`ere colonne & Deuxi\`eme & Troisi\`eme 
 \endfirsthead
 \hline
 Premi\`ere & Deuxi\`eme & Troisi\`eme \\
 \multicolumn{3}{|p{0.6666\linewidth}|}
      {Suite...}\\
 \endhead
 \hline
 \multicolumn{3}{|p{0.6666\linewidth}|}
      {Suite page suivante}
 \\ \hline 
 \endfoot 
 \hline
 \multicolumn{3}{|p{0.6666\linewidth}|}
      {Fin}\\
 \hline
 \endlastfoot 
 \hline
 1   &     1  &        1  \\
 2   &     4  &       16  \\
 3   &     9  &       81  \\
 1   &     1  &        1  \\
 2   &     4  &       16  \\
 3   &     9  &       81  \\
 1   &     1  &        1  \\
 2   &     4  &       16  \\
 3   &     9  &       81  \\
 1   &     1  &        1  \\
 2   &     4  &       16  \\
 3   &     9  &       81  \\
 ... &    ... &      ...  \\ 

\end{longtable} \end{noexemple}

2_composition/tableaux/tableau_sur_plusieurs_pages.1476604685.txt.gz · Dernière modification: 2016/10/16 09:58 par jejust
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0