我可以单独编译这个表,但是当我想编译整个文件时,它会给我一个错误,可以通过删除来修复\multirow
。
\usepackage{multirow}
\begin{table}[htbp]
\begin{center}
\begin{tabular}{|c|c|c|c|p{1cm}p{1cm}p{1cm}p{1cm}p{1cm}p{1cm}p{1cm}|}
\hline
A & B & C & D & \multicolumn{7}{|c|}{F} \\ \hline
\multirow{ 2}{}{1} & 0 & 6 & 230 & 35 & 40 & 55 & 25 & 40 & 35 & \\
& 1 & 5 & 195 & 25 & 50 & 35 & 40 & 45 & & \\ \hline
\end{tabular}
\end{center}
\label{table2}
\end{table}
答案1
您的代码中存在一些错误;您需要给出第二个参数\multirow
(单元格宽度的明确值或*
使用内容的自然宽度);此外,\label
必须始终出现后 \caption
在浮动环境中:
\documentclass{article}
\usepackage{multirow}
\begin{document}
\begin{table}[htbp]
\centering
\begin{tabular}{|c|c|c|c|p{1cm}p{1cm}p{1cm}p{1cm}p{1cm}p{1cm}p{1cm}|}
\hline
A & B & C & D & \multicolumn{7}{|c|}{F} \\ \hline
\multirow{ 2}{*}{1} & 0 & 6 & 230 & 35 & 40 & 55 & 25 & 40 & 35 & \\
& 1 & 5 & 195 & 25 & 50 & 35 & 40 & 45 & & \\ \hline
\end{tabular}
\caption{A test caption}
\label{table2}
\end{table}
\end{document}
p{...}
如果单元格不包含段落,则不清楚为什么要使用列。
顺便说一句,我使用了\centering
而不是center
环境来避免添加额外的垂直间距(在大多数情况下这是不希望的)。
您没有使用您声明的所有列,但我猜这只是为了举例。
答案2
另一种解决方案是tabularray
包裹:
\documentclass{article}
\usepackage{tabularray}
\begin{document}
\begin{table}[htbp]
\centering
\begin{tblr}{
colspec={|c|c|c|c|p{1cm}p{1cm}p{1cm}p{1cm}p{1cm}p{1cm}p{1cm}|},
hline{1,2,4},
cell{1}{5} = {c=7}{c}, % multicolumn
cell{2}{1} = {r=2}{m}, % multirow
}
A & B & C & D & F & & & & & & \\
1 & 0 & 6 & 230 & 35 & 40 & 55 & 25 & 40 & 35 & \\
& 1 & 5 & 195 & 25 & 50 & 35 & 40 & 45 & & \\
\end{tblr}
\end{table}
\end{document}
答案3
供参考,下面是如何构建该表的{NiceTabular}
方法nicematrix
。
在该环境中,您可以使用内置命令水平和垂直合并单元格\Block
,并且使用键hvlines
,可以绘制所有规则,但那些块除外。
\documentclass{article}
\usepackage{nicematrix}
\begin{document}
\begin{table}[htbp]
\centering
\begin{NiceTabular}{*{4}{c}*{7}{p{1cm}}}[hvlines]
A & B & C & D & \Block{1-*}{F} \\
\Block{2-1}{1} & 0 & 6 & 230 & 35 & 40 & 55 & 25 & 40 & 35 & \\
& 1 & 5 & 195 & 25 & 50 & 35 & 40 & 45 & & \\
\end{NiceTabular}
\caption{A test caption}
\label{table2}
\end{table}
\end{document}