表格嵌套多列到多行

表格嵌套多列到多行

我尝试将多列嵌套在多行中,但我的代码无法正确关闭第一行的表格。如何修复此问题?

在此处输入图片描述

在此处输入图片描述`

答案1

首先,不清楚为什么你为所有五列选择了非常小的列宽。其次,由于单元格内的换行似乎不需要(甚至不允许),我不会使用允许换行的列类型,而是使用列类型w。第三,出现垂直线缺失的原因是,你使用了\multicolumn{2}{c}{...}而不是\multicolumn{2}{c|}{...}

在此处输入图片描述

\documentclass{article} 
\usepackage{array} % for 'm' and 'w' column types
\usepackage{multirow}
\usepackage{newtxtext,newtxmath}      % optional
\renewcommand\thetable{\Roman{table}} % optional
\begin{document}
\setcounter{table}{4} % just for this example

\begin{table}[h]
\centering
\caption{Dummy table}
\begin{tabular}{| *{5}{wc{3mm}} |} % choose suitable column types/widths
\hline
\multirow{2}{*}{a} 
   & \multicolumn{2}{c }{b-c} 
   & \multicolumn{2}{c|}{b-c} \\ % <- note the "|" symbol
   & b2 & c2 & d2 & e2 \\ \hline
r  & 1  & 2  & 3  & 4  \\ \hline
\end{tabular}
\end{table}
\end{document}

答案2

tabularray就简单多了。

\documentclass{article}
\usepackage{tabularray}
\begin{document}
\begin{table}
\caption{title}
\centering
\begin{tblr}
{
colspec      = {Q[c,m]Q[c,m]Q[c,m]Q[c,m]Q[c,m]},
hline{1,3,Z} = {},
vline{1,Z}   = {},
cell{1}{2,4} = {c=2}{},
cell{1}{1}   = {r=2}{},
}
a & b-c &    & b-c &    \\
  & b2  & c2 & d2  & e2 \\
r & 1   & 2  & 3   & 4  \\
\end{tblr}
\end{table}
\end{document}

在此处输入图片描述

相关内容