我想在 tabularx 环境中对表格中的文档执行简单的算术运算。有一列表示数量,一列表示单价,还有一列表示总价,总价是数量和单价的结果。在表格的末尾,需要将每行的总价相加。
有没有一种简单的方法可以在 Tex 文档中实现此要求?是否可以在文档的后面部分访问单个值(等于总和)?
示例代码:
\begin{tabularx}{\textwidth}{c|X|r|r}
\hline
\tiny {Quantity} & \tiny {Description} & \tiny {Unit price} & \tiny {Quantity * Unit Price} \\ \hline
1 & Product 1 & 2,00 EUR &2,00 EUR \\
\hline
2 & Product 2 & 5,00 EUR & 10,00 EUR \\
\hline
3 & Product 3 & 4,00 EUR & 12,00 EUR \\
\hline
\multicolumn{ 3}{l}{ all round price } &24,00 EUR \\ \hline
\end{tabularx}
提前谢谢您,
巴西雷亚尔
克里斯托弗
答案1
我认为这将完成基本的工作:
\documentclass{article}
\usepackage{spreadtab}
\usepackage{numprint}
\usepackage{tabularx}
\usepackage{multirow}
\usepackage{siunitx}
\renewcommand{\familydefault}{\sfdefault}
\nprounddigits{2}
\STsetdecimalsep{{,}}
\newcommand{\Eur}{{\,EUR}}
\begin{document}
\begin{table}[htbp]
\begin{spreadtab}{{tabularx}{\textwidth}{c|X|N{4}{2}<\Eur|N{4}{2}}}
\hline
@\tiny Quantity & @\tiny Description & @\multicolumn{1}{r|}{\tiny Unit price} & @\multicolumn{1}{r}{\tiny Quantity * Unit Price} \\ \hline
1 & @Product 1 & 2 & :={a2*c2} \Eur \\
\hline
2 & @Product 2 & 5 & :={a3*c3} \Eur \\
\hline
3 & @Product 3 & 4 & :={a4*c4} \Eur \\
\hline
\multicolumn{3}{l}{@all round price } & :={sum(d2:d4)} \Eur \\ \hline
\end{spreadtab}
\end{table}
\end{document}
編輯:
- 使代码更简单;
- 让数量列为整数。