我想使用 a在同一行上\forloop
迭代生成\multicolumn
命令,但是我收到了“Misplaced \omit”错误,我无法弄清楚。
以下\multicolumn
在一行中使用两个命令,但没有循环,效果很好:
\documentclass{article}
\begin{document}
Table A, \textbackslash{}multicolumn, but no loop
\bigskip
\begin{tabular}{|cc|cc|}
1 & 2 & 3 & 4 \\
\multicolumn{2}{c}{A} & \multicolumn{2}{c}{B} \\
\end{tabular}
\end{document}
但是,我需要\multicolumns
迭代地生成。这是我的尝试:我引入了一个新的计数器,,loopindex
并创建了\forloop
运行两次的,每次都发出,\multicolumn{2}{c}{A}
然后发出&
。
\documentclass{article}
\usepackage{forloop}
\newcounter{loopindex}
\begin{document}
Table B, with loop but no \textbackslash{}ifthenelse
\bigskip
\begin{tabular}{|cc|cc|}
1 & 2 & 3 & 4 \\
\forloop{loopindex}{1}{\value{loopindex}<3}{\multicolumn{2}{c}{A} &}
\end{tabular}
\end{document}
这会导致以下错误:“放错 \omit。 \multispan -> \omit \@multispan。
我意识到我的简单循环在第二次迭代中会产生一个额外的“&”,但是(a)我在定义中添加了第五列,tabular
或者(b)我添加了一个ifthenelse
仅在第一次迭代中打印“&”,所以我不认为额外的“&”是问题所在。
我究竟做错了什么?
forloop
如果这就是问题所在,我愿意接受 的替代方案。但是,我的实际应用比简单地重复相同的\multicolumn
n
时间要求更高。我需要一个循环计数器,这样我就可以遍历数组arrayjobx
以获取要放置在每个 中的内容\multicolumn
。