Fehlende senkrechte Linie in Tabelle

Tabellen und Grafiken erstellen und anordnen


tschachi91
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: Mi 25. Jun 2014, 10:21
Wohnort: Dresden

Fehlende senkrechte Linie in Tabelle

Beitrag von tschachi91 »

Hallo,

bei der folgenden Tabelle kann ich mir nicht erklären, warum die rechte Begrenzungslinie fehlt, ich habe sie doch eigentlich in Zeile 3 nach Dokumentbeginn angefordert.

Über eure Hilfe wäre ich sehr dankbar.
\documentclass[10pt,onehalfspacing]{scrbook}
\usepackage{tabularx}
\usepackage{amsmath}
\usepackage{multirow}
\usepackage{csquotes}
\begin{document}
\begin{table}\centering 
\caption{Zahlenwerte und Herkunft der Massenträgheitsmomente der rotierenden Bauteile des Abtriebs}\label{tab:MTMs} 
\begin{tabular*}{\textwidth}{|p{0.32\textwidth}|c|c|m{\textwidth}|}
\hline 
\multirow{2}{*}{\textbf{Bauteil}} & \multicolumn{2}{c|}{\textbf{MTM} [$\mathsf{kgm^2}$]} & \multirow{2}{*}{\textbf{Ermittlung mittels}} \\ \cline{2-3} 
& kleine LA & große LA \\
\hline 
\enquote{Welle} & \multicolumn{2}{c|}{0,0079} & CAD-Daten\\
\hline 
Spannsatz Tollok TLK200 & \multicolumn{2}{c|}{0,0006} & CAD-Daten\\
\hline 
3x Pendelkugellager & \multicolumn{2}{c|}{0,0071} & CAD-Daten \\ 
\hline 
Zahnrad klein & \multicolumn{2}{c|}{0,0043} & Handrechnung \\
\hline 
Zahnrad mittel & \multicolumn{2}{c|}{0,0207} & Handrechnung \\ 
\hline 
Zahnrad groß & \multicolumn{2}{c|}{0,0625} & Handrechnung \\
\hline 
Scheiben zw. den Zahnrädern & \multicolumn{2}{c|}{0,0030} & Handrechnung \\
\hline 
Messaufnehmer & \multicolumn{2}{c|}{0,0010} & Handrechnung inkl. Wiegen \\ 
\hline 
Nabe & 0,0056 & 0,0662 & CAD-Daten \\ 
\hline 
Innenlamellenhalter (t=4mm) & - & 0,0019 & CAD-Daten \\
\hline 
Innenlamellensicherung & - & 0,0012 & CAD-Daten \\
\hline 
Innenlamelle & - & 0,0038 & Handrechnung mit Zeichnung \\
\hline \hline 
\textbf{Summe Abtrieb ohne LSK} & \textbf{\underline{\underline{0,1127}}} & \textbf{\underline{\underline{0,1802}}} &  \\ \hline \hline
Lamellensicherheitskupplung & \multicolumn{2}{c|}{0,026} & Datenblatt \\
\hline
Mitrotierende Teile der Reibscheibenkupplung & \multicolumn{2}{c|}{0,100} & Datenblatt \\
\hline
Anschlussteil Reibscheibenkupplung & \multicolumn{2}{c|}{0,0295} & Handrechnung \\
\hline
Welle zw. LSK und Reibscheibenkupplung & \multicolumn{2}{c|}{0,0052} & Handrechnung \\
\hline
\enquote{Zwischenstück} & \multicolumn{2}{c|}{0,0506} & Handrechnung mit Zeichnung \\
\hline
\enquote{Flansch} & \multicolumn{2}{c|}{0,0272} & Handrechnung mit Zeichnung \\
\hline \hline 
\textbf{Summe Abtrieb mit LSK} & \textbf{\underline{\underline{0,3510}}} & \textbf{\underline{\underline{0,4185}}} &  \\
\hline \hline
\end{tabular*}
\end{table}
\end{document}
Viele Grüße
Robert

Besserwisser

Beitrag von Besserwisser »

Du solltest mal überschlagen, wie breit die Tabelle nach deiner Definition wird … Die rechte vertikale Linie liegt schlicht weit außerhalb der Seite. ich verstehe auch nicht, warum du überhaupt p- und m-Spalten verwendest. Ich denke, links ist das noch ok, aber rechts wäre eine l-Spalte besser. Außerdem bringt tabular* nur etwas, wenn man auch angibt, wie diese Breite erreicht werden soll.

Aber: Senkrechte Linien in Tabellen sind störend. Tabellen werden durch weglassen meist besser. Du solltest die Tabelle vielleicht generell noch einmal neu planen. Siehe beispielsweise auch tabsatz und die Anleitung zum Paket booktabs. Nützlich für dich wäre eventuell auch tabularx.

tschachi91
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: Mi 25. Jun 2014, 10:21
Wohnort: Dresden

Beitrag von tschachi91 »

Danke für den Hinweis mit tabularx. Die senkrechten Linien möchte ich aber unbedingt beibehalten.

Es verbleibt nun nur noch das Problem, dass im Tabellenkopf in der zweiten Zeile rechts der die senkrechte Linie fehlt. Wie kann ich diese denn erzeugen?
\documentclass[12pt]{scrbook} 
\usepackage{tabularx} 
\usepackage{amsmath} 
\usepackage{multirow} 
\usepackage{csquotes}
\usepackage[onehalfspacing]{setspace} 
\usepackage{courier}
\renewcommand{\familydefault}{\sfdefault}
\begin{document} 

\begin{tabularx}{\textwidth}{|p{0.32\textwidth}|c|c|X|}
\hline 
\multirow{2}{*}{\textbf{Bauteil}} & \multicolumn{2}{c|}{\textbf{MTM} [$\mathsf{kgm^2}$]} & \multirow{2}{*}{\textbf{Ermittlung mittels}} \\ \cline{2-3} 
& kleine LA & große LA \\
\hline 
\enquote{Welle} & \multicolumn{2}{c|}{0,0079} & CAD-Daten\\
\hline 
Spannsatz Tollok TLK200 & \multicolumn{2}{c|}{0,0006} & CAD-Daten\\
\hline 
3x Pendelkugellager & \multicolumn{2}{c|}{0,0071} & CAD-Daten \\ 
\hline 
Zahnrad klein & \multicolumn{2}{c|}{0,0043} & Handrechnung \\
\hline 
Zahnrad mittel & \multicolumn{2}{c|}{0,0207} & Handrechnung \\ 
\hline 
Zahnrad groß & \multicolumn{2}{c|}{0,0625} & Handrechnung \\
\hline 
Scheiben zw. den Zahnrädern & \multicolumn{2}{c|}{0,0030} & Handrechnung \\
\hline 
Messaufnehmer & \multicolumn{2}{c|}{0,0010} & Handrechnung inkl. Wiegen \\ 
\hline 
Nabe & 0,0056 & 0,0662 & CAD-Daten \\ 
\hline 
Innenlamellenhalter (t=4mm) & - & 0,0019 & CAD-Daten \\
\hline 
Innenlamellensicherung & - & 0,0012 & CAD-Daten \\
\hline 
Innenlamelle & - & 0,0038 & Handrechnung mit Zeichnung \\
\hline \hline 
\textbf{Summe Abtrieb ohne LSK} & \textbf{\underline{\underline{0,1127}}} & \textbf{\underline{\underline{0,1802}}} &  \\ \hline \hline
Lamellensicherheitskupplung & \multicolumn{2}{c|}{0,026} & Datenblatt \\
\hline
Mitrotierende Teile der Reibscheibenkupplung & \multicolumn{2}{c|}{0,100} & Datenblatt \\
\hline
Anschlussteil Reibscheibenkupplung & \multicolumn{2}{c|}{0,0295} & Handrechnung \\
\hline
Welle zw. LSK und Reibscheibenkupplung & \multicolumn{2}{c|}{0,0052} & Handrechnung \\
\hline
\enquote{Zwischenstück} & \multicolumn{2}{c|}{0,0506} & Handrechnung mit Zeichnung \\
\hline
\enquote{Flansch} & \multicolumn{2}{c|}{0,0272} & Handrechnung mit Zeichnung \\
\hline \hline 
\textbf{Summe Abtrieb mit LSK} & \textbf{\underline{\underline{0,3510}}} & \textbf{\underline{\underline{0,4185}}} &  \\
\hline \hline
\end{tabularx}

\end{document}

Viele Grüße
Robert

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Damit die Linie gezeichnet wird, musst Du die zugehörige Zelle auch mit ausgeben. Füge entsprechend noch das & dafür ein:
& kleine LA & große LA& \\ 
Außerdem würde ich Dir empfehlen, die erste Spalte nicht im Blocksatz sondern im linksbündigen Flattersatz zu setzen.

Gruß
Elke

tschachi91
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: Mi 25. Jun 2014, 10:21
Wohnort: Dresden

Beitrag von tschachi91 »

Super!
Vielen Dank, das hat geklappt....ich habe, was das betrifft noch nicht so die Übersicht :?

Deinen Ratschlag hab ich natürlich beherzigt, ich habe dazu die folgende Lösung gefunden:
\newcolumntype{v}[1]{
>{\raggedright\hspace{0pt}}p{#1}
}
Bei einer anderen Tabelle klappt das jedoch nicht ohne Fehler :?:
Er zeigt dann etwas mit misplaced \hline an, wenn ich vom Spaltentyp "v" wieder auf "p" umstelle, ist es wieder in Ordnung, aber eben mit Blocksatz.

Viele Grüße
Robert

Besserwisser

Beitrag von Besserwisser »

Verwende \RaggedRight aus dem Paket ragged2e statt \raggedright oder ersetze \\ am Ende der Tabellenzeile durch \tabularnewline oder verwende \arraybackslash wie in der Anleitung zum Paket array erklärt. Notwendig ist das, weil \raggedright \\ umdefiniert, so dass es nur noch das Ende einer Zeile innerhalb der Zelle aber nicht mehr das Ende der Tabellenzeile ist.

tschachi91
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: Mi 25. Jun 2014, 10:21
Wohnort: Dresden

Beitrag von tschachi91 »

Vielen Dank, das hat mir geholfen :)

Viele Grüße
Robert

Antworten