Ceci est une ancienne révision du document !
Comment gérer les tableaux de plus d'une page ?} %7.2
Le package supertabular permet de définir de longs
tableaux, qui seront coupés automatiquement par
si
nécessaire, pour changer de page. L'environnement s'appelle
supertabular
. \`A l'intérieur de cet environnement, on
définit le contenu du tableau de la m\^eme fa\c con que dans
l'environnement tabular
. On peut, en plus, utiliser les commandes
suivantes :
\begin{descrcmd}
\item[tablefirsthead\marg{…}] qui définit le contenu de la
première ligne du tableau ;
\item[tablehead\marg{…}] définit le contenu de la première
ligne qui sera insérée en cas de changement de page au milieu du tableau ;
\item[tabletail\marg{…}] définit le contenu de la dernière
ligne d'une page, en cas de changement de page au milieu du tableau ;
\item[tablelasttail\marg{…}] définit le contenu de la
dernière ligne du tableau ;
\item[topcaption\marg{…}] et bottomcaption
\marg{…}
permettent de mettre une légende sur ce tableau, soit au début, soit à la fin (ces deux commandes sont incompatibles, si l'on utilise les deux, seule la légende de fin sera appliquée). ''tablecaption'' place la légende à sa position \og~habituelle~\fg, qui est par défaut le haut du tableau.
\end{descrcmd}
Voici un exemple : % 1 2 3 4 5X 6 %23456789012345678901234567890123456789012345678901234567890
\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 à 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}
Le package longtable est assez semblable au
précédent, 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é sur
plusieurs pages. Les en-t\^etes se définissent de manière un peu
différente, comme dans l'exemple suivant :
% 1 2 3 4 5X 6 %23456789012345678901234567890123456789012345678901234567890
\begin{longtable}{|p{0.2\linewidth}| p{0.2\linewidth}|p{0.2\linewidth}|} \hline Première colonne & Deuxième & Troisième \endfirsthead \hline Première & Deuxième & Troisième \\ \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}