PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Verschachtelte Tabelle eingerückt



basekk
28-12-2008, 15:57
Hallo zusammen!

Ich hoffe ihr hatte alle schöne Weihnachten und freut euch auch schon auf Silvester.

Leider muss ich über die Feiertage an meiner Bachelor-Thesis schreiben. Dabei bin ich auf ein Problem mit verschachtelten Tabellen gestoßen.

Mein lauffähiges Minimal-Beispiel:



\documentclass{scrreprt}

\usepackage{multirow}
\usepackage{dcolumn}
\usepackage{tabularx}
\usepackage{booktabs}


\begin{document}


\begin{table}[hbt]%
\centering
{\tiny
\begin{tabularx}{0.9\linewidth}{@{}>{\slshape}l>{\slshape}l*6{D{,}{,}{3}}@{}}\toprule
&& \multicolumn{1}{c}{\textbf{Per. 0}} & \multicolumn{1}{c}{\textbf{Per. 1}} & \multicolumn{1}{c}{\textbf{Per. 2}} & \multicolumn{1}{c}{\textbf{Per. 3}} & \multicolumn{1}{c}{\textbf{Per. 4}} & \multicolumn{1}{c}{\textbf{Per. 5}}\\\cmidrule(r){3 -3} \cmidrule (lr){4 -4} \cmidrule(lr){5 -5} \cmidrule(lr){6 -6} \cmidrule(lr){7 -7} \cmidrule(l){8 -8}
\multicolumn{2}{l}
{\begin{tabular}{@{}>{\slshape}l>{\slshape}l@{}}(1)&Finanzierungsleasing\\\cmidrule(r){1-2}(2)&Operating Leasing\\\end{tabular}}
&-24.000,00&-18.065,09&-12.130,18&-6.195,27&-260,36&5.674,55 \\\midrule
(3) & SALB OL-OL & & & & & & \\\cmidrule(r){1-2}
(4) & SALB FL-FL & & & & & & \\\cmidrule(r){1-2}
(5) & SALB FL-OL & -24.000,00 & 1.000,00 & 1.000,00 & 1.000,00 & 1.000,00 & 1.000,00 \\\cmidrule(r){1-2}
(6) & SWR-R & & & & & & \\\cmidrule(r){1-2}
(7) & SWR-S & & & & & & \\\bottomrule

\end{tabularx}
}
\end{table}
\end{document}

Das Problem dabei sind die ersten beiden Zeilen (Finanzierungsleasing und Operating Leasing). Dadurch, dass ich dcolumn zur Ausrichtung verwende, ist \multirow nicht möglich. Von daher habe ich versucht die vorderen beiden Bezeichnungen in eine eingebettete Tabelle zu packen.
Leider wird diese im pdf-Dokument eingerückt. Zusätzlich ist die Linie zwischen (1) und (2) nicht richtig positioniert.

EDIT: Da fällt mir noch auf: Wie kann ich die Spalten, in denen die Perioden stehen, gleichmäßig verteilen?

Hat jemand eine Idee, wie ich dieses Problem lösen kann? :confused:

Vielleicht gibt es ja auch einen anderen Ansatz, den ich noch nicht probiert habe...


Vielen Dank für eure Hilfe!


Beste Grüße!
basekk

René Geppert
28-12-2008, 16:32
\documentclass{scrreprt}

\usepackage{multirow}
\usepackage{dcolumn}
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{array,ragged2e}


\begin{document}


\begin{table}[hbt]%
\centering
{\tiny
\begin{tabularx}{0.9\linewidth}{@{}>{\slshape}l>{\slshape}l*{6}{>{\Centering}X}@{}}\toprule
&& \multicolumn{1}{c}{\textbf{Per. 0}} & \multicolumn{1}{c}{\textbf{Per. 1}} & \multicolumn{1}{c}{\textbf{Per. 2}} & \multicolumn{1}{c}{\textbf{Per. 3}} & \multicolumn{1}{c}{\textbf{Per. 4}} & \multicolumn{1}{c}{\textbf{Per. 5}}\\\cmidrule(r){3 -3} \cmidrule (lr){4 -4} \cmidrule(lr){5 -5} \cmidrule(lr){6 -6} \cmidrule(lr){7 -7} \cmidrule(l){8 -8}
\multicolumn{2}{@{}l}
{\begin{tabular}{@{}>{\slshape}l>{\slshape}l}(1) & Finanzierungsleasing\\ \cmidrule(){1-2}
(2) & Operating Leasing
\end{tabular}}
&-24.000,00&-18.065,09&-12.130,18&-6.195,27&-260,36&5.674,55 \\\midrule
(3) & SALB OL-OL & & & & & & \\\cmidrule(r){1-2}
(4) & SALB FL-FL & & & & & & \\\cmidrule(r){1-2}
(5) & SALB FL-OL & -24.000,00 & 1.000,00 & 1.000,00 & 1.000,00 & 1.000,00 & 1.000,00 \\\cmidrule(r){1-2}
(6) & SWR-R & & & & & & \\\cmidrule(r){1-2}
(7) & SWR-S & & & & & & \\\bottomrule

\end{tabularx}
}
\end{table}
\end{document}

gleichmäßige spalten erhälst du über tabularx, das du ohnehin schon hast, jedoch nicht wirklich nutzt
scheinbar haben alle deine werte 2 nachkommastellen, da brauchst du imho dcolumn gar nicht

basekk
28-12-2008, 16:54
Hallo René!

Vielen Dank für die schnelle Antwort.

Stimmt du hast Recht, die Zahlen haben alle zwei Nachkommastellen. Ich bin davon ausgegangen, dass die Kommas bei z.B. 10,11 und 10,88 nicht unter einander stehen würden. Das tun sie aber.

Nach dem ich die X-Spalten noch rechtsbündig ausgerichtet habe, passt es jetzt wunderbar!


1000 Dank und nen guten Rutsch!


basekk