Tabelle mit multicolumn -- Problem Spaltenbreite

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Tabelle mit multicolumn -- Problem Spaltenbreite

von Sebastian-Gast » Fr 9. Mai 2014, 16:15

Habe das Problem etwas eingrenzen können, es funktioniert solange die erste Zeile der Multirow nicht länger ist als die Zweite. In meinem Beispiel kann ich durch entfernen der BOLD Schrift die Breite der beiden Zellen etwas verringern und dann passt es. Aber richtig gut ist das ja auch nicht :(

von Sebastian-Gast » Fr 9. Mai 2014, 15:57

Auch wenn das Thema hier schon etwas hälter ist, ich habe ein kleines Problem mit dem von euch vorgestellten Tabellenformat. Habe das obige Beispiel von Xenara bei mir implementiert und angepasst. Jedoch ist die Zweite Zeile der Multirow nicht mittig zur Ersten. Sieht ziemlich blöd aus. Kennt jemand da einen Trick?

begin{table}[h]
\centering
\caption{Tabellenbeschreibung}
\begin{tabularx}{.8\textwidth}{lYYYYYY}
\toprule
\multirow{2}{*}{} & \multicolumn{3}{c}{\textbf{(1+1)-Evolutionary / Powell}} & \multicolumn{3}{c}{\textbf{Simplex}} \\
& Phase 1 & Phase 2 &  Phase 3 &Phase 1 & Phase 2 &  Phase 3 \\
\cmidrule(rl){2-4} \cmidrule(rl){5-7} 
$T_x$ & 2 & 3 & 4 & 5 & 6 \\
$T_y$& 2 & 3 & 4 & 5 & 6 \\
$T_z$ & 2 & 3 & 4 & 5 & 6 \\
$R_x$ & 2 & 3 & 4 & 5 & 6 \\
$R_y$ & 2 & 3 & 4 & 5 & 6 \\
$R_z$ & 2 & 3 & 4 & 5 & 6 \\
\bottomrule
\end{tabularx}
\label{tab:}
\end{table} 

von bmro » Do 6. Mai 2010, 20:04

Danke :).
es funktioniert. ich werde es mir anschauen.

von Xenara » Do 6. Mai 2010, 10:56

Mein Ansatz funktioniert auch mit tabularx. Ausserdem hab ich deine Tabelle etwas überarbeitet. Vertikale Linien sollten nämlich vermieden werden, und das Paket booktabs ermöglicht schönere Abstände, sodass für die Verständlichkeit und Übersichtlichkeit nur noch wenige horizontale Linien nötig sind.

Schau mal, wies dir gefällt:
\documentclass[ngerman, headsepline,footsepline,12pt]{scrreprt} 
\usepackage{times} 
\usepackage[latin1]{inputenc} % Umlaute 

\usepackage{multicol} 
\usepackage{multirow} 
\usepackage{array} 

\usepackage{tabularx}
\usepackage{booktabs}


\usepackage{setspace} 
\onehalfspacing 

\usepackage[ngerman]{babel} 

\begin{document} 

\newcolumntype{Y}{>{\centering\arraybackslash}X} 

\begin{table}[h] 
\centering 
\caption{Tabellenbeschreibung} 
\begin{tabularx}{.8\textwidth}{lYYYYc} 
\toprule
\multirow{2}{*}{} & \multicolumn{2}{c}{Überschrift eins} & \multicolumn{2}{c}{Überschrift zwei} & Überschrift drei \\ 
& 2 & 3 & 4 & 5 & 6 \\ 
\cmidrule(rl){2-3} \cmidrule(rl){4-5} \cmidrule(rl){6-6} 
1 & 2 & 3 & 4 & 5 & 6 \\ 
1 & 2 & 3 & 4 & 5 & 6 \\ 
1 & 2 & 3 & 4 & 5 & 6 \\ 
1 & 2 & 3 & 4 & 5 & 6 \\ 
\midrule 
\multicolumn{6}{c}{1-6} \\ 
\bottomrule 
\end{tabularx} 
\label{tab:} 
\end{table} 


\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}} 
\begin{table}[h] 
\centering 
\caption{Tabellenbeschreibung} 
\begin{tabular}{|l|C{2cm}|C{2cm}|C{2cm}|C{2cm}|c|} 
\hline 
\multirow{2}{*}{} & \multicolumn{2}{c|}{Überschrift eins} & \multicolumn{2}{c|}{Überschrift zwei} & Überschrift drei \\ 
\cline{2-6} 
& 2 & 3 & 4 & 5 & 6 \\ 
\hline 
1 & 2 & 3 & 4 & 5 & 6 \\ 
\hline 
1 & 2 & 3 & 4 & 5 & 6 \\ 
\hline 
1 & 2 & 3 & 4 & 5 & 6 \\ 
\hline 
1 & 2 & 3 & 4 & 5 & 6 \\ 
\hline 
\multicolumn{6}{|c|}{1-6} \\ 
\hline 
\end{tabular} 
\label{tab:} 
\end{table} 

\end{document}
P.S. Schönes Minimalbeispiel :)

von bloodworks » Do 6. Mai 2010, 10:50

Hallo wenn ich dein Problem richtig verstanden habe dann suchst du das Paket tabularx. Oder etwas neuer tabulary.

von bmro » Do 6. Mai 2010, 10:42

Keine Antworten :(

ich habe eine Halblösung und zwar:
mit dem Paket array und
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
bekomme ich nun die Einträge zentriert, aber immer noch muss ich mir eine passende Spaltenbreite ausdenken

Mini-bsp:
\documentclass[ngerman, headsepline,footsepline,12pt]{scrreprt}
\usepackage{times}
\usepackage[latin1]{inputenc} % Umlaute

\usepackage{multicol}
\usepackage{multirow}
\usepackage{array}

\usepackage{setspace}
\onehalfspacing

\usepackage[ngerman]{babel}

\begin{document}

\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
\begin{table}[h]
\centering
\caption{Tabellenbeschreibung}
\begin{tabular}{|l|C{2cm}|C{2cm}|C{2cm}|C{2cm}|c|}
\hline
\multirow{2}{*}{} & \multicolumn{2}{c|}{Überschrift eins} & \multicolumn{2}{c|}{Überschrift zwei} & Überschrift drei \\
\cline{2-6}
& 2 & 3 & 4 & 5 & 6 \\
\hline
1 & 2 & 3 & 4 & 5 & 6 \\
\hline
1 & 2 & 3 & 4 & 5 & 6 \\
\hline
1 & 2 & 3 & 4 & 5 & 6 \\
\hline
1 & 2 & 3 & 4 & 5 & 6 \\
\hline
\multicolumn{6}{|c|}{1-6} \\
\hline
\end{tabular}
\label{tab:}
\end{table}

\end{document}

Tabelle mit multicolumn -- Problem Spaltenbreite

von bmro » Mi 5. Mai 2010, 11:48

Hallo Allerseits,

ich versuche eine Tabelle zu erstellen, wo eine Spalte zwei Unterspalten hat.
Das Problem ist, dass die erste Unterspalte schmaler als die zweite ist.
Hier ist Mini-Beispiel
\documentclass[ngerman, headsepline,footsepline,12pt]{scrreprt}
\usepackage{times}
\usepackage[latin1]{inputenc} % Umlaute

\usepackage{multicol}
\usepackage{multirow}

\usepackage{setspace}
\onehalfspacing

\usepackage[ngerman]{babel}

\begin{document}

\begin{table}[h]
\centering
\caption{Tabellenbeschreibung}
\begin{tabular}{|l|c|c|c|c|c|}
\hline
\multirow{2}{*}{} & \multicolumn{2}{c|}{Überschrift eins} & \multicolumn{2}{c|}{Überschrift zwei} & Überschrift drei \\
\cline{2-6}
& 2 & 3 & 4 & 5 & 6 \\
\hline
1 & 2 & 3 & 4 & 5 & 6 \\
\hline
1 & 2 & 3 & 4 & 5 & 6 \\
\hline
1 & 2 & 3 & 4 & 5 & 6 \\
\hline
1 & 2 & 3 & 4 & 5 & 6 \\
\hline
\multicolumn{6}{|c|}{1-6} \\
\hline
\end{tabular}
\label{tab:}
\end{table}

\end{document}
Wenn ich die Spaltenbreite mit p{<size>} ändere, bekomme ich zwar gleichgroße Untersplaten, aber dafür muss ich zum einen viele Werte ausprobieren, bis ich eine zufriedenstellende Layout bekomme, zum anderen bekomme ich die Einträge in den Unterspalten nicht zentriert, sondern nur linksbündig.
Hier ist das Mini-Beispiel dafür:
\documentclass[ngerman, headsepline,footsepline,12pt]{scrreprt}
\usepackage{times}
\usepackage[latin1]{inputenc} % Umlaute

\usepackage{multicol}
\usepackage{multirow}

\usepackage{setspace}
\onehalfspacing

\usepackage[ngerman]{babel}

\begin{document}

\begin{table}[h]
\centering
\caption{Tabellenbeschreibung}
\begin{tabular}{|l|p{2cm}|p{2cm}|c|c|c|}
\hline
\multirow{2}{*}{} & \multicolumn{2}{c|}{Überschrift eins} & \multicolumn{2}{c|}{Überschrift zwei} & Überschrift drei \\
\cline{2-6}
& 2 & 3 & 4 & 5 & 6 \\
\hline
1 & 2 & 3 & 4 & 5 & 6 \\
\hline
1 & 2 & 3 & 4 & 5 & 6 \\
\hline
1 & 2 & 3 & 4 & 5 & 6 \\
\hline
1 & 2 & 3 & 4 & 5 & 6 \\
\hline
\multicolumn{6}{|c|}{1-6} \\
\hline
\end{tabular}
\label{tab:}
\end{table}

\end{document}
Über einen Vorschlag würde ich mich sehr freuen.

Bmro

Nach oben