Die Tabelle habe ich nach euren Tipps umgebaut. Funktioniert tadenlos! Letzte Frage: "Ich möchte einen von mir vordefinierten Spaltentypen verwenden siehe Code. Nur bekomme ich viele Fehler wenn ich L, R hier implementiere \begin{tabular}{|S|SSSLLLLLRR|} Wo liegt meine Schuld? Und \cline funktioniert hier bei mir auch nicht (leider) Danke im Voraus für eure Hilfe und ein schönes Wochenende.

Open in Online-Editor
\documentclass[margin=10pt]{standalone}
\usepackage{rotating}
\usepackage{booktabs}
\usepackage[copy-decimal-marker]{siunitx}
\usepackage[table]{xcolor} 
\newcommand\tabrotate[1]{\rotatebox{90}{#1\hspace{\belowrulesep}}} %Rotierung
%\newcolumntype{L}{>{\begin{varwidth}{1cm}}l<{\end{varwidth}}} %Spalten Definition Linksbündig 2 cm!
%\newcolumntype{R}{>{\begin{varwidth}{1cm}}r<{\end{varwidth}}} %Spalten Definition Rechtsbündig 2 cm!
%\newcolumntype{C}{>{\begin{varwidth}{1cm}}c<{\end{varwidth}}} %Spalten Definition Zentriert 2 cm!
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newpage

\rowcolors{5}{white}{gray!10}
\begin{document}
\begin{tabular}{|S|SSSrrrrrrr|}
\toprule
\rowcolor{red!20}
 & 101 & 102 & 103 & 104 & 105 & 106 & 107 & 108 & 109 & 110  \tabularnewline \cline{2-9}
 \rowcolor{red!20}
{ Halloo} & {\tabrotate{P}} & {\tabrotate{AX}} & {\tabrotate{AY}} & {\tabrotate{AZ}} & {\tabrotate{AX}} & {\tabrotate{AX}} & {\tabrotate{AX}} & {\tabrotate{AY}} & {\tabrotate{AZ}} & {\tabrotate{YD}} \tabularnewline %\midrule
  \midrule
 \rowcolor{red!20}
 {Wie geht es} & -8,0 & -13,0 & 2,7 & 2,8 & 2,9 & -8,0 & -13,0 & 2,7 & 2,8 & 2,9 \tabularnewline
 \rowcolor{red!20}
 {Neinnn} & 100,7 & 7000,1 & 14,0 & 798,6 & 1033,7 & 100,7 & 7000,1 & 14,0 & 798,6 & 1033,7 \tabularnewline 
 \rowcolor{red!20}
 {heute ??} & 54,4 & 3506,6 & 5,7 & 397,9 & 515,4 & 54,4 & 3506,6 & 5,7 &397,9 & 515,4\tabularnewline 
 \midrule
 1 & 2,5 & 2,6 & 2,7 & 2,8 & 2,9 & 3 & 3,1 & 3,2 & 3,3 & 3,4 \tabularnewline
 2& -8 & 2,6 & 9 & 10 & 11 & 12 & -13 & 14 & 15 & 16 \tabularnewline
 3 & 100,7 & 7000,1 & 8 & 798,6 & 1033,7 & 100,7 & 7000,1 & 8 & 798,6 & 1033,7\tabularnewline
 4 & 12 & -13 & 14 & 15 & 16 & 2,5 & 2,6 & 2,7 & 2,8 & 2,9\tabularnewline
 5 & 100,7 & 7000,1 & 8 & 798,6 & 1033,7 & -8 & 2,6 & 9 & 10 & 11\tabularnewline 
 \bottomrule

\end{tabular}
\end{document}

gefragt 15 Mai '15, 11:13

basel's gravatar image

basel
12941723
Akzeptiert-Rate: 0%

bearbeitet 15 Mai '15, 11:33

esdd's gravatar image

esdd
17.7k254256

1

So wie die Spaltentypen L und R momentan definiert sind, erwarten sie eine Breite als Argument, d.h. Du musst dann bei der Tabelle zum Beispiel L{2cm} statt nur L angeben.

(15 Mai '15, 11:33) esdd

@esdd Danke! Frage ist erledigt!

(15 Mai '15, 11:40) basel

@esdd Wie kann ich die Breitenangabe in dieser Zeile noch ergänzen? newcolumntype{L}[1]{>{raggedrightletnewline\arraybackslashhspace{0pt}}m{#1}}

Danke.

(15 Mai '15, 11:53) basel

@basel Vielleicht beschreibst Du besser, welche Anforderungen die Spalten/Spaltentypen erfüllen sollen.

(15 Mai '15, 12:05) esdd

Der Spaltentyp soll nur links zentriert sein mit einer Breite von 2 cm. Natürlich kann ich p{3cm}verwenden. Ich möchte aber diesen Spaltentyp mit irgendeinen Buchstaben definieren.

(15 Mai '15, 12:40) basel
1

Wenn alle Deine L Spalten im Dokument wirklich dieselbe Breite haben sollen, dann nimm \newcolumntype{L}{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{2cm}}.

Wenn Du unterschiedliche Breiten im Dokument hast, dann lasse die Definition von L wie in Deinem Bespiel und nimm die Einstellung der Spaltenbreiten in der Spaltendefinition der jeweiligen Tabelle vor, also \begin{tabular}{|S|SSSL{2cm}L{2cm}L{2cm}L{2cm}L{2cm}R{2cm}R{2cm}|} oder kürzer \begin{tabular}{|S|*{3}{S}*{5}{L{2cm}}*{2}{R{2cm}}|}.

In beiden Fällen ändert sich aber auch die Ausrichtung der rotierten Spalten.

(15 Mai '15, 12:56) esdd

@esdd Danke funktioniert. Abschließende Frage kann ich bei dem vordefinierten Spaltentyp S (Dezimalkomma Ausrichtung) auch irgendwie die Breite der Spalte festlegen? Ich habe es versucht zu lösen, schaffe es aber nicht. :/

(15 Mai '15, 13:21) basel
1

Das ist schon wieder so eine "diskutierende Frage", bei die Hälfte der Informationen in den Kommentaren steckt. Ich erinnere deshalb noch einmal daran, dass man

  • Je Frage hier auch nur eine (möglichst eng gefasste) Frage stellen sollte.
  • Bei Bedarf die Frage editieren sollte, wenn sie ursprünglich nicht vollständig oder verständlich war.
  • Ergänzungsfragen als neue Frage (ggf. mit Link auf die alte) gestellt werden sollten.

Ohne das versinken wir hier im Chaos und erstellen keine Wissensdatenbank mehr!

(15 Mai '15, 13:43) saputello

@saputello Verstanden war in dieser Hinsicht ein wenig zu unüberlegt.

(15 Mai '15, 14:32) basel
Ergebnis 5 von 9 show 4 more comments

In Deinem Beispiel definierst Du die Spaltentypen mit einem Argument. Bei der Spaltendefinition für die Tabelle gibst Du dann aber kein Argument an. Das führt zu den Fehlermeldungen. Es gibt jetzt zwei Möglichkeiten:

Feste Vorgabe der Spaltenbreite

Entweder sollen alle Spalten vom Typ L und R in Deinem Dokument wirklich die gleiche Breite haben, dann kannst Du diese schon bei der Definition des Spaltentyps vorgeben

Open in Online-Editor
\newcolumntype{L}{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{2cm}}
\newcolumntype{R}{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}m{2cm}}

und anschließend bei der Tabellendefinition einfach nur L und R nutzen:

Open in Online-Editor
\begin{tabular}{|S|SSSLLLLLRR|}

Damit man sich bei den vielen S, L und R nicht verzählt, kann man das auch als

Open in Online-Editor
\begin{tabular}{|S|*{3}{S} *{5}{L} *{2}{R}|}

schreiben.

Angabe des Arguments bei der Spaltendefinition für die Tabelle

Oder Du willst für diesen Spaltentyp verschiedene Breiten nutzen, dann lasse die Definition wie bisher

Open in Online-Editor
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}

und gib die gewünschte Spaltenbreite dann in der Spaltendefinition der jeweiligen Tabelle an, wobei diese Angabe dann unbedingt erforderlich ist.

Open in Online-Editor
\begin{tabular}{|S|SSSL{2cm}L{2cm}L{2cm}L{2cm}L{2cm}R{2cm}R{2cm}|}

Das geht natürlich ebenfalls kürzer:

Open in Online-Editor
\begin{tabular}{|S| *{3}{S} *{5}{L{2cm}} *{2}{R{2cm}}|}
Permanenter link

beantwortet 15 Mai '15, 14:55

esdd's gravatar image

esdd
17.7k254256
Akzeptiert-Rate: 62%

danke für die Zusammenfassung.

(15 Mai '15, 15:12) basel

@basel Ich habe den Inhalt der Kommentare jetzt absichtlich in einer Antwort zusammen gefasst, weil wir dann einerseits die nicht mehr benötigten Kommentare bei der Frage löschen können und Du zum anderen die Antwort akzeptieren kannst, wenn sie für Dich ausreichend ist. Sie erscheint dann in der Übersicht als beantwortet.

(15 Mai '15, 21:23) esdd
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×254

gestellte Frage: 15 Mai '15, 11:13

Frage wurde gesehen: 8,347 Mal

zuletzt geändert: 15 Mai '15, 21:23