Seite 1 von 3
Tabelle mit simplem Zeilenumbruch
Verfasst: Mo 12. Okt 2009, 12:56
von kahlchen
Hallo,
ich bin ziemlich neu und daher auch unerfahren im Umgang mit TeX. Hier mein Quellcode:
\begin{table*}[ht]
%\centering
\begin{tabular}{ l|l|l|l|l } % senkrechten Striche
\textbf{Produkt} & \textbf{Lizensierungsart} & \textbf{Preis pro Einheit} & \textbf{Bestellmenge} &
\textbf{Preis}\\
\hline
LOGINventory 4 & pro Computer & \texttt{\EUR{~~6}} & \texttt{150} & \texttt{\EUR{~900}} \\
LOGINventory 4 Webinterface & pro Installation & \texttt{\EUR{250}} & \texttt{~~5} & \texttt{\EUR{1250}} \\
LOGINventory 4 Update & pro Jahr & \texttt{~20\%} & \texttt{~ja} & \texttt{\EUR{~180}} \\
\\
\hline & & & \textbf{Gesamt:} & \texttt{\EUR{\textbf{2330}}}
\hline
\end{tabular}
\caption{LOGINventory 4 Lizensierungsbeispiel}
\label{tab:LOGINventory 4 Lizensierungsbeispiel}
\end{table*}
Es soll einfach in der ersten Spalte z.B. nach der "4" ein Zeilenumbruch erfolgen, damit die ganze Tabelle dann auch in der Breite auf die Seite passt.
Danke im Voraus für die Hilfe!
//EDIT
Noch eine kleine Frage, wie kann ich etwas in einer Tabellenzeile zentrieren?
Tabelle mit mehrzeiligen Zellen
Verfasst: Mo 12. Okt 2009, 15:08
von Stefan Kottwitz
Hallo kahlchen,
willkommen im Forum!
Wenn Du p-Spalten statt l-Spalten verwendest, kann umgebrochen werden, automatisch oder auch durch \\. Beispielsweise
\begin{tabular}{ p{3cm}|l|l|l|l }
Passe die Spaltenbreite an für einen passenden Umbruch (2.8 cm etc.) oder schreibe in der Zelle
LOGINventory 4\\Webinterface &
Zentrieren kannst du spaltenweise mit c statt l bei den Spaltenformatparametern, oder Du verwendest
\centering.
Viele Grüße,
Stefan
Verfasst: Mo 12. Okt 2009, 15:23
von kahlchen
Vielen Dank schonmal!

Das mit dem Zentrieren funktioniert gut.
Nur, wenn ich eine Zeile mit \\ umbreche, dann geht er ja automatisch eine Zeile tiefer und danach nicht wieder hoch, so dass die Überschriften ab \\ alle eine Zeile tiefer stehen. Wie kann ich das denn unterbinden?
Und zu dem p{3cm}, gibt das die Breite der ersten Spalte an? Wenn ja, wie kann denn weitere Spaltenbreiten angeben? Also nach der Ersten eben noch die Zweite?
Vielen Dank!
Verfasst: Mo 12. Okt 2009, 15:28
von Stefan Kottwitz
p ist der Spaltentyp (p wie paragraph oder \parbox) und der Wert in den geschweiften Klammern die Breite dieser Spalte. Das geht narürlich auch für mehrere Spalten, also etwa
\begin{tabular}{p{3cm}|p{4cm}|p{3cm}|l|l}
In p-Spalten bzw. -Zellen kannst Du \\ verwenden, ohne dass die Tabellenzeile beendet wird, das gilt nur in der Zelle dann. Oder nimm \newline statt \\.
Stefan
Verfasst: Di 13. Okt 2009, 07:46
von kahlchen
Vielen Dank. Er bricht nun die Zeilen automatisch um. Und wenn ich will, dass er umbricht, dann schreibe ich z.B. "Lizensierungs-art" statt "Lizensierungsart". Danke.
So, nun die nächsten Fragen
1. Wie kann ich denn eine ganze Spalte rechts ausrichten? Ich habe das mal wie im folgenden Quelltext zu sehen ist mit "r" versucht, klappt aber nicht.
2. Und dann müsste ich auch noch die ganze Tabelle irgendwie an den rechten, statt linken Seitenrand bekommen.
\begin{table*}[ht]
\begin{tabular}{p{3.1cm} p{2.8cm} p{1.9cm} p{1.6cm} p{1.4cm} l l r r r }
\textbf{Produkt} & \textbf{Lizensierungs-art} & \textbf{Preis pro Einheit} & \textbf{Bestell-menge} & \textbf{Preis}\\
\hline
...
\hline
\end{tabular}
\caption{LOGINventory 4 Lizensierungsbeispiel}
\label{tab:LOGINventory 4 Lizensierungsbeispiel}
\end{table*}
Vielen Dank schonmal

Tabellenausrichtung
Verfasst: Di 13. Okt 2009, 11:56
von Stefan Kottwitz
1. geht mit r, im Beispielcode hast Du die Spalten nur nicht verwendet, nicht gefüllt,
2. funktioniert mit
\raggedleft oder der
flushright-Umgebung.
\documentclass[a4paper,10pt]{article}
\begin{document}
\begin{table}[ht]
\raggedleft
\begin{tabular}{rr}
abc & def \\
1 & 2
\end{tabular}
\caption{Test}
\label{tab:test}
\end{table}
\end{document}
Stefan
Verfasst: Di 13. Okt 2009, 12:21
von kahlchen
Danke, 2. funktioniert gut.

Aber das mit "r" geht irgendwie nicht. Ich habe die Tabelle schon mit Daten gefüllt, hab's nur für's Beispiel mit ... ersetzt.
Aber vllt. liegt das auch an der Tabelle zuvor. Da bekomme ich noch Fehlermeldungen wegen \infty, also dem Unendlichzeichen. Kannst du da auch mal kurz schauen bitte?
\begin{table*}[ht]
\raggedleft
\begin{tabular}{p{4.5cm}p{4.5cm}lr}
\textbf{Anzahl Lizenzen} & \textbf{Kosten pro Computer} \\
\hline
\texttt{~~~1 - ~199} & \texttt{\EUR{6}} \\
\texttt{~200 - ~499} & \texttt{\EUR{5}} \\
\texttt{~500 - 2499} & \texttt{\EUR{4}} \\
\texttt{2500 - 4999} & \texttt{\EUR{3,8}} \\
\texttt{5000 - 7999} & \texttt{\EUR{3,6}} \\
\texttt{8000 - } \infty & \texttt{\EUR{3,2}} \\
\hline
\end{tabular}
\caption{LOGINventory 4 Client-Lizenzkosten}
\label{tab:LOGINventory 4 Client-Lizenzkosten}
\end{table*}
Da funktioniert das "r" auch schon nicht :/
1000 Dank nochmal!
Tabellenausrichtung
Verfasst: Di 13. Okt 2009, 12:27
von Stefan Kottwitz
Das \infty muss im Mathematik-Modus stehen, weil es ein mathematisches Symbol ist:
Weiterhin deklarierst Du 4 Spalten: p, p, l und r, jedoch verwendest Du nur die beiden p-Spalten. Wenn Du hier nur \begin{tabular}{rr} schreibst, siehst Du die Änderung.
Stefan
Verfasst: Di 13. Okt 2009, 12:40
von kahlchen
Ahhh, jetzt klappts. Ich dachte das "r" oder "l" wäre noch eine Option für die "p"-Spalte... daher die Verwirrung. Aber alles funktioniert leider immer noch nicht. Wenn ich statt "p" mein "r" schreibe, damit alles schön rechts ist dann klappt das gut. Allerdings bricht er jetzt meine Wörter nicht mehr um.

Tabellenausrichtung
Verfasst: Di 13. Okt 2009, 12:48
von Stefan Kottwitz
Dann kombinieren wir eben p und rechtsbündig, verwenden dafür die Pakete ragged2e und array:
\usepackage{ragged2e}
\usepackage{array}
...
\begin{tabular}{>{\RaggedLeft}p{3cm}r}
...
Stefan