Impossible d'utiliser simultanément makecell, threeparttable et tabulary
1'm essayant d'accomplir, "threeparttables" tout en utilisant simultanément makecell(pour réaliser des sauts de ligne intra-cellule) et tabulary(pour que le tableau ne dépasse pas \linewidth). Mais alors que 1 peut réaliser avec trois parties de tables tabularyqui n'utilisent pas makecell(premier exemple de code ci-dessous) et des tables avec tabularycette utilisation makecellmais pas threeparttable(deuxième exemple de code ci-dessous), 1 ne peut pas construire un document qui combine les trois (troisième exemple). Que faire?
Je suis conscient que l'utilisation tabularxau lieu de tabularyconstruit cette table particulière, mais j'ai beaucoup de ces tables. Je préférerais ne pas vérifier chaque tableau séparément mais plutôt utiliser tabulary. En outre, en utilisant 1 je ne suis pas marié à makecellmais 1, il faut pouvoir avoir des sauts de ligne dans les cellules (et contrôler leur alignement vertical).
Toute aide serait très appréciée!
Premier exemple ( threeparttableet tabularmais non makecell)
\documentclass{article}
\usepackage[para]{threeparttable}
\usepackage{tabulary}
\begin{document}
\begin{table}
\begin{threeparttable}
\caption{Lorem ipsum dolor sit amet, consectetur}
{
\begin{tabulary}{\linewidth}{L r L r}
\textbf{Aaa} & \textbf{Bbb} & \textbf{Ccc} \tabularnewline
& & Ccc1 & Ccc2 \tabularnewline
Adipisicing elit, sed do eiusmod tempor & \(0.40\) & Ut labore et dolore magna aliqua & \(7.77\) \tabularnewline
Ut enim ad minim veniam, quis nostrud exercitation & \(0.93\) & Ullamco laboris nisi ut aliquip ex ea commodo consequat & \(62.6\) \tabularnewline
\end{tabulary}
}
\end{tablenotes}
\end{threeparttable}
\end{document}
Deuxième exemple ( tabularyet makecellmais nonthreeparttable
\documentclass{article}
\usepackage{tabulary}
\usepackage{makecell}
\begin{document}
\begin{table}
\caption{Lorem ipsum dolor sit amet, consectetur}
{
\begin{tabulary}{\linewidth}{L r L r}
\textbf{Aaa} & \textbf{Bbb} & \textbf{Ccc} \tabularnewline
& & \makecell{Ccc1} & \makecell{Ccc2 \\ Ccc2} \tabularnewline
Adipisicing elit, sed do eiusmod tempor & \(0.40\) & Ut labore et dolore magna aliqua & \(7.77\) \tabularnewline
Ut enim ad minim veniam, quis nostrud exercitation & \(0.93\) & Ullamco laboris nisi ut aliquip ex ea commodo consequat & \(62.6\) \tabularnewline
\end{tabulary}
}
\end{table}
\end{document}
Troisième exemple (les trois, ne fonctionne pas)
\documentclass{article}
\usepackage[para]{threeparttable}
\usepackage{tabulary}
\usepackage{makecell}
\begin{document}
\begin{table}
\begin{threeparttable}
\caption{Lorem ipsum dolor sit amet, consectetur}
{
\begin{tabulary}{\linewidth}{L r L r}
\textbf{Aaa} & \textbf{Bbb} & \textbf{Ccc} \tabularnewline
& & \makecell{Ccc1} & \makecell{Ccc2 \\ Ccc2} \tabularnewline
Adipisicing elit, sed do eiusmod tempor & \(0.40\) & Ut labore et dolore magna aliqua & \(7.77\) \tabularnewline
Ut enim ad minim veniam, quis nostrud exercitation & \(0.93\) & Ullamco laboris nisi ut aliquip ex ea commodo consequat & \(62.6\) \tabularnewline
\end{tabulary}
}
\begin{tablenotes}
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
\end{tablenotes}
\end{threeparttable}
\end{table}
\end{document}
Réponses
Vous pouvez remplacer \makecellpar la \Centerstackcommande from stackengine, qui n'a pas de conflit avec d'autres packages;
\usepackage[latin]{babel}
\usepackage[para]{threeparttable}
\usepackage{tabulary}
\usepackage[usestackEOL]{stackengine}
\begin{document}
\begin{table}
\begin{threeparttable}
\caption{Lorem ipsum dolor sit amet, consectetur}
{
\begin{tabulary}{\linewidth}{L r L r}
\textbf{Aaa} & \textbf{Bbb} & \textbf{Ccc} \tabularnewline
& & \Centerstack{Ccc1} & \Centerstack{Ccc2\\ Ccc2} \tabularnewline
Adipisicing elit, sed do eiusmod tempor & \(0.40\) & Ut labore et dolore magna aliqua & \(7.77\) \tabularnewline
Ut enim ad minim veniam, quis nostrud exercitation & \(0.93\) & Ullamco laboris nisi ut aliquip ex ea commodo consequat & \(62.6\) \tabularnewline
\end{tabulary}
}
\begin{tablenotes}\footnotesize
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
\end{tablenotes}
\end{threeparttable}
\end{table}
\end{document}