Não é possível usar simultaneamente makecell, threeparttable e tabulary
Estou tentando realizar "três tabelas de partes" enquanto uso simultaneamente makecell(para obter quebras de linha dentro da célula) e tabulary(para fazer com que a tabela não exceda \linewidth). Mas enquanto eu posso conseguir com três tabelas de partes tabularyque não usam makecell(primeiro exemplo de código abaixo) e tabelas com tabularyesse uso, makecellmas não threeparttable(segundo exemplo de código abaixo), não posso construir um documento que combine os três (terceiro exemplo). O que fazer?
Estou ciente de que usar em tabularxvez de tabularycriar esta tabela específica, mas tenho muitas dessas tabelas. Prefiro não verificar cada tabela separadamente, mas sim usar tabulary. Além disso, usando 1 não sou casado com, makecellmas preciso ter quebras de linha dentro das células (e controlar seu alinhamento vertical).
Qualquer ajuda seria muito apreciada!
Primeiro exemplo ( threeparttablee tabularmas não 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}
Segundo exemplo ( tabularye makecellmas nãothreeparttable
\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}
Terceiro exemplo (todos os três, não funcionando)
\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}
Respostas
Você pode substituir \makecellpelo \Centerstackcomando de stackengine, que não tem conflito com outros pacotes;
\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}