
Tento definir macro para formulário de atalho \multiline{1}{<pcolumn type>}{\textbf{text}}
:
\documentclass[12pt,border=1mm,preview]{standalone}
\newcommand\mcbf[2]{\multicolumn{1}{#1}{\textbf{#2}}}
\begin{document}
\begin{tabular}{lr}
\hline
\mcbf{|c|}{AAA} & \mcbf{c|}{BBB} \\ \hline
\end{tabular}
\end{document}
Que funcionam conforme o esperado. Como na maioria dos casos eu uso o mesmo especificador de coluna, tento redefinir esta macro para que o tipo de coluna padrão seja, por exemplo c|
:
\documentclass[12pt,border=1mm,preview]{standalone}
\newcommand\xmcbf[2][c|]{\multicolumn{1}{#1}{\textbf{#2}}}
\begin{document}
\begin{tabular}{lr}
\xmcbf[|c|]{AAA} & \mcbf{BBB} \\ \hline
C & D \\ \hline
\end{tabular}
\end{document}
O que dá erro:
\multispan ->\omit
\@multispan
O que sinto falta na \newcommand
definição? Minha pesquisa (provavelmente desajeitada) no SE não fornece informações úteis.
Responder1
Você precisa do comando paraexpandirpara\multicolumn
\documentclass[12pt,border=1mm,preview]{standalone}
\usepackage{xparse}
\DeclareExpandableDocumentCommand\xmcbf{O{c|}m}{\multicolumn{1}{#1}{\textbf{#2}}}
\begin{document}
\begin{tabular}{lr}
\xmcbf[|c|]{AAA} & \xmcbf{BBB} \\ \hline
C & D \\ \hline
\end{tabular}
\end{document}