\documentclass{beamer}
\usepackage{multirow}
\usepackage{makecell}
\begin{document}
\begin{frame}
\begin{tabular}{cccccccc}
\hline
\multirow{2}{*}{A} & \multirow{2}{*}{B} &
\multicolumn{3}{c}{C} &
\multicolumn{3}{c}{D} &\\
\cline{3-5}
&x&y&z
\cline{6-8}
&x&y&z \\ \hline
\end{tabular}
\end{frame}
\end{document}
但是当两次使用multicolumn的时候会报错:
Extra alignment tab has been changed to \cr. \end{frame}
我应该怎么办?
答案1
您的代码中有两个语法错误。要消除它们,您需要
去除
&
颗粒\multicolumn{3}{c}{D} &\\
不要在
\cline
指令和列内容之间交替。因此,请替换\cline{3-5} &x&y&z \cline{6-8} &x&y&z \\ \hline
和
\cline{3-5} \cline{6-8} && x&y&z & x&y&z \\ \hline
经过这些更改后,您的代码将可以编译。但是,最终的“外观”可能不符合您的喜好,因为这两个\cline
s 将连接在一起。
我建议你改用书签包而不是使用\hline
和\cline
。
请注意,我认为\multirow
OP 的代码中没有必要使用这些指令。
\documentclass{beamer}
\usepackage{booktabs}
\begin{document}
\begin{frame}
\begin{tabular}{@{} *{8}{c} @{}}
\toprule
A & B & \multicolumn{3}{c}{C} & \multicolumn{3}{c@{}}{D} \\
\cmidrule(lr){3-5} \cmidrule(l){6-8}
&& u&v&w & x&y&z \\
\midrule
\dots & \dots & \dots & \dots & \dots & \dots & \dots & \dots \\
\bottomrule
\end{tabular}
\end{frame}
\end{document}