PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : verschachtelte Tabelle



pucki
11-02-2011, 10:19
Hallo,

hätte jemand eine Idee, wie ich folgendes Problem etwas eleganter lösen könnte?


\documentclass[a4paper,11pt]{scrartcl}

\usepackage{ucs}
\usepackage[utf8x]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{fontenc}
\usepackage{graphicx}

% \date{2011-02-11}

\begin{document}

Standard:

\begin{tabular}{p{1cm}p{1cm}l}
\hline
= = & = = &
\begin{tabular}{p{1cm}p{1cm}l}
= = & = = & = =
\tabularnewline
= = & = = & = =
\tabularnewline
\hline
\end{tabular}
\tabularnewline
= = & = = &
\begin{tabular}{p{1cm}p{1cm}l}
= = & = = & = =
\tabularnewline
= = & = = & = =
\tabularnewline
\end{tabular}
\tabularnewline
\hline
\end{tabular}
\vspace*{2cm}

Gewünschte Darstellung:

\begin{tabular}{p{1cm}p{1cm}l}
\hline
\vspace*{-1.01em}= = & \vspace*{-1.01em} = = &
\begin{tabular}{p{1cm}p{1cm}l}
= = & = = & = =
\tabularnewline
= = & = = & = =
\tabularnewline
\hline
\end{tabular}
\tabularnewline
\vspace*{-1.01em}= = & \vspace*{-1.01em} = = &
\begin{tabular}{p{1cm}p{1cm}l}
= = & = = & = =
\tabularnewline
= = & = = & = =
\tabularnewline
\end{tabular}
\tabularnewline
\hline
\end{tabular}

\end{document}

grüße

Reinhard

Xenara
11-02-2011, 10:30
Jep :D



\documentclass[a4paper,11pt]{scrartcl}

\usepackage{ucs}
\usepackage[ansinew]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{fontenc}
\usepackage{graphicx}

\usepackage{array}
\usepackage{booktabs}

% \date{2011-02-11}

\begin{document}

Standard:\\

\begin{tabular}{p{1cm}p{1cm}l}
\hline
= = & = = &
\begin{tabular}{p{1cm}p{1cm}l}
= = & = = & = =
\tabularnewline
= = & = = & = =
\tabularnewline
\hline
\end{tabular}
\tabularnewline
= = & = = &
\begin{tabular}{p{1cm}p{1cm}l}
= = & = = & = =
\tabularnewline
= = & = = & = =
\tabularnewline
\end{tabular}
\tabularnewline
\hline
\end{tabular}
\vspace*{2cm}

Gewünschte Darstellung:\\

\begin{tabular}{p{1cm}p{1cm}l}
\hline
\vspace*{-1.01em}= = & \vspace*{-1.01em} = = &
\begin{tabular}{p{1cm}p{1cm}l}
= = & = = & = =
\tabularnewline
= = & = = & = =
\tabularnewline
\hline
\end{tabular}
\tabularnewline
\vspace*{-1.01em}= = & \vspace*{-1.01em} = = &
\begin{tabular}{p{1cm}p{1cm}l}
= = & = = & = =
\tabularnewline
= = & = = & = =
\tabularnewline
\end{tabular}
\tabularnewline
\hline
\end{tabular}
\vspace*{2cm}

Einfacher:\\

\begin{tabular}{*{2}{>{\centering\arraybackslash}p{1cm}}*{3}{>{\centering\arraybackslash}m{1cm}}}
\toprule
= = & = = & = = \par = =& = = \par = =& = = \par = = \\
\cmidrule(lr){3-5}
= = & = = & = = \par = =& = = \par = =& = = \par = = \\
\bottomrule
\end{tabular}

\end{document}


(Mir war nicht ganz klar, was wie wo zentriert sein soll, aber das kann man ggf. noch locker anpassen.)

pucki
11-02-2011, 10:38
ich hätte wohl doch noch eine Zeile dazuschreiben sollen ...

es geht um die vertikale Ausrichtung. Ohne Verschachtelung sorgt p dafür, dass der Text an den oberen Rand der Zelle gesetzt wird. Mit Verschachtelung nicht. Bei den Daten die ich darstellen möchte, verwirrt das aber. Darum möchte ich die erste Zeile über alle Spalten auf der gleichen Höhe haben.

Grüße

Reinhard

Xenara
11-02-2011, 10:41
Ich bin von deiner "Gewünschten Darstellung" ausgegangen.
Meinst du dann so?


\documentclass[a4paper,11pt]{scrartcl}

\usepackage{ucs}
\usepackage[ansinew]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{fontenc}
\usepackage{graphicx}

\usepackage{array}
\usepackage{booktabs}

% \date{2011-02-11}

\begin{document}
Einfacher:\\

\begin{tabular}{*{5}{>{\centering\arraybackslash}p{1cm}}}
\toprule
= = & = = & = = \par = =& = = \par = =& = = \par = = \\
\cmidrule(lr){3-5}
= = & = = & = = \par = =& = = \par = =& = = \par = = \\
\bottomrule
\end{tabular}


\end{document}

pucki
11-02-2011, 10:52
Im Prinzip ja, aber das wird mächtig unübersichtlich ...
ich habe mal ein Bild von meiner aktuellen Darstellung angehängt ...

Grüße

Reinhard

Xenara
11-02-2011, 11:12
Nächster Versuch:


\documentclass[a4paper,11pt]{scrartcl}

\usepackage{ucs}
\usepackage[ansinew]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{fontenc}
\usepackage{graphicx}

\usepackage{array}
\usepackage{booktabs}
\usepackage{MnSymbol}

% \date{2011-02-11}

\newcommand{\arr}{$\Rightarrow$}

\begin{document}

\begin{tabular}{lclclclcl}
\toprule
tel &\arr& [m] &\arr& type &\arr& [0] &\arr& HOME \\
&& && val &\arr& [0] &\arr& xxxx-xxxxxx\\
&& [m+1] &\arr& type &\arr& [0] &\arr& HOME \\
\cmidrule(lr){5-9}
&& && val &\arr& [0] &\arr& \\
&& [m+2] &\arr& type &\arr& [0] &\arr& HOME \\
&& && && [1] &\arr& FAX\\
&& && val &\arr& [0] &\arr& xxxxx-xxxxxx\\
\midrule
adr &\arr& [x] &\arr& type &\arr& [0] &\arr& WORK \\
\cmidrule(lr){5-9}
&& && val &\arr& [0] &\arr& \\
&& && && [1] &\arr& \\
&& && && [2] &\arr& \\
&& && && [3] &\arr& \\
&& && && [4] &\arr& \\
&& && && [5] &\arr& \\
&& && && [6] &\arr& \\
\bottomrule
\end{tabular}

\end{document}

CollmDante
11-02-2011, 11:28
Hallo,
ich habe es mit dem Paket tabu realisiert:

\documentclass[a4paper,11pt]{scrartcl}

\usepackage{ucs}
\usepackage[utf8x]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{fontenc}
\usepackage{graphicx}
\usepackage{tabu}
% \date{2011-02-11}

\begin{document}

Standard:

\begin{tabu} spread 0pt {p{1cm}p{1cm}X[m]}
\hline
= = & = = &
\begin{tabu}{p{1cm}p{1cm}l}
= = & = = & = =
\tabularnewline
= = & = = & = =
\tabularnewline
\hline
\end{tabu}
\tabularnewline
= = & = = &
\begin{tabu}{p{1cm}p{1cm}l}
= = & = = & = =
\tabularnewline
= = & = = & = =
\tabularnewline
\end{tabu}
\tabularnewline
\hline
\end{tabu}
\end{document}
Das erscheint mir übersichtlich
Gruß
Jens

pucki
18-02-2011, 21:08
Hallo Jens,

nach anfänglichen Problemen (ich musste mir das Paket erst herunterladen und kompilieren)
habe ich bei mir jedoch immer noch das Problem, dass die erste Zeile in Spalte 1 nicht zur
Zeile 1 in Spalte 2 passt, also die Unterkante der Zeilen nicht auf gleicher Höhe sind.

Hallo Xenara,

das Ergebnis ist top, keine Frage, allerdings ist der Aufbau etwas unübersichtlich ...


grüße

Reinhard

shortener
18-02-2011, 21:40
Sieht so aus, als ob bei Dir das Paket tabu (http://www.ctan.org/tex-archive/macros/latex/contrib/tabu/) fehlen würde. In MiKTeX kannst Du dies mit Hilfe des Package-Managers installieren.