包含两个“双列”的表格

包含两个“双列”的表格

我怎样才能在 LaTeX 中创建这样的表格?

在此处输入图片描述

我尝试了以下方法:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{tabularx,caption,booktabs}

\newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}}
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}

\begin{document}

\begin{figure}[htbp]
\captionsetup{justification=raggedright, margin=1cm}
\begin{tabular}{|L{4cm}C{2cm}|L{4cm}C{2cm}|}
\midrule
\textbf{Aktiva} & in \% der Bilanzsumme & \textbf{Passiva} & in \% der Bilanzsumme \tabularnewline
\midrule
Immaterielle Vermögensgegenstände & 1,98 \% & Eigenkapital (einschließlich Rücklagen, Gewinnvortrag, anteiliger Sonderposten mit Rücklageanteil; abzüglich Berichtigungsposten zum Eigenkapital) & 29,87 \\
Sachanlagen & 23,40 & Rückstellungen (einschließlich anteiliger Sonderposten mit Rücklageanteil) & 16,89 \\
\end{tabular}
\end{figure}

\end{document}

在此处输入图片描述

我的问题是我不知道如何格式化表格,以便左侧的两列与右侧的两列相互独立。换句话说,我希望“Sachanlagen”行直接位于“Immaterielle Vermögensgegenstände”下方。

提前感谢大家!

答案1

不错的选择土拨鼠答案。使用类似的想法来制作两个独立的列对(带有嵌套表),但是使用tabularxsiunitxragged2e包。

编辑:为嵌套表定义新环境

\newenvironment{intab}
{
\tabularx{\linewidth}[t]{L|S[table-format=3.2,
                             table-column-width=8ex]}
}
{
\endtabularx
}

完整的表格代码变得更短更简单:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}

\usepackage{siunitx}
\usepackage{ragged2e}
\usepackage{makecell, tabularx}
\renewcommand\theadfont{\footnotesize\bfseries}
\renewcommand\theadgape{}
\newcolumntype{L}{>{\RaggedRight}X}
\usepackage[skip=1ex]{caption}

\newenvironment{intab}
{
\tabularx{\linewidth}[t]{L|S[table-format=3.2,
                             table-column-width=8ex]}
}
{
\endtabularx
}

%-------------------------------- show page layout, only for test
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%

\begin{document}
    \begin{table}[htbp]
\renewcommand\arraystretch{1.5}
\small
\begin{tabular*}{\linewidth}{|@{}*{2}{p{\dimexpr0.5\linewidth-\arrayrulewidth\relax}@{}|@{}}
                              @{}}
    \Xhline{1pt}
\begin{intab}
\thead[tl]{Aktiva}                  & {\makecell[tl]{in \% der\\ Bilanz-\\summe}}  \\
\end{intab}
    &   \begin{intab}
\thead[tl]{Passiva}                 & {\makecell[t]{in \% der\\ Bilanz- \\summe}}  \\
        \end{intab}  \tabularnewline
    \Xhline{0.5pt}
\begin{intab}
Immaterielle Vermögensgegenstände   & 1,98                                          \\
Sachanlagen                         & 23,40                                         \\
    \rule{0pt}{5.5\baselineskip}    &   \\
\end{intab}
    &   \begin{intab}
Eigenkapital (einschließlich Rücklagen, Gewinnvortrag, anteiliger Sonderposten mit Rücklageanteil; abzüglich Berichtigungsposten zum Eigenkapital)
                                    & 29,87                                         \\
Rückstellungen (einschließlich anteiliger Sonderposten mit Rücklageanteil)
                                    & 16,89                                         \\
        \end{intab}  \tabularnewline
    \hline
    \hline
\begin{intab}
Bilanzsumme                         & 100,00                                        \\
\end{intab}
    &   \begin{intab}
Bilanzsumme                         & 100,00                                        \\
        \end{intab}  \tabularnewline
    \Xhline{1pt}
\end{tabular*}
    \end{table}
\end{document}

在此处输入图片描述

答案2

好的,我误解了你的问题。要使左右行独立,只需将它们分成两个单独的表即可。我还添加了 dcolumns,以确保数字在逗号处对齐(​​并使用b类型列,使数字与长文本的底部对齐)。

\documentclass{article}
\usepackage{dcolumn}
\usepackage{tabularx}
\newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}}
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}

\begin{document}
\newcolumntype{,}{D{,}{,}{2}}
\centerline{
\begin{tabular}{|@{}b{7.9cm}|@{}b{7.9cm}|}
\hline
\begin{tabular}{b{5.75cm}|,}
\textbf{Aktiva} & \multicolumn{1}{p{1.5cm}}{in \%\ der Bilanzsumme} \\ 
\hline
text & 1,00 \\
some very long text with a lot of items and explanations and references to ducks
& 4,20  \\
\end{tabular}& 
\begin{tabular}{b{5.75cm}|,}
\textbf{Aktiva} & \multicolumn{1}{p{1.5cm}}{in \%\ der Bilanzsumme} \\ 
\hline
text & 1,30 \\
text
& 2,20  \\ \\ \\
\end{tabular}\\
\hline
\hline
\begin{tabular}{b{5.75cm}|,}
Bilanzsumme & \multicolumn{1}{p{1.5cm}}{\raggedleft 100,00} \\
\end{tabular}&
\begin{tabular}{b{5.75cm}|,}
Bilanzsumme & \multicolumn{1}{p{1.5cm}}{\raggedleft 100,00} \\
\end{tabular}\\
\hline
\end{tabular}}
\end{document}

在此处输入图片描述

相关内容