PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tabellen



zero82
27-04-2010, 23:24
Hallo ich habe noch ein sehr wichtiges Anliegen,

da meine Arbeit ziemlich rechenlastig ist, müsste ich mir in Excel diese Tabellen berechnen und anschließend einfügen. Ich habe das bisher so gehandbabt, dass ich mir die Tabelle in Excel als eine jpg Datei abspeichere und diese dann über includegraphics in Latex einbaue. Nur finde ich das Ergebnis in Latex icht schön. die Schrift ist sehr verfranzt und verschwommen. Es ist also kein gestochen scharfes Bild.

Ich habe auch versucht bmp und png´s einzufügen, leider mit dem gleichen Ergebnis.

Kennt einer eine Lösung, wie man Tabellen von Excel in Latex einbaut

Viele Grüße
zero

bobmalaria
27-04-2010, 23:52
hi,

da hast du dir bisher die absolut schlechtesten möglichkeiten ausgesucht :)

also du kannst die tabelle als pdf drucken oder abspeichern (je anch excel version) und dann mit \includegraphics einbinden.

dann hast du aber nicht die gleiche schriftart wie im text was sicher schlecht aussieht. schau dir auf jeden fall mal das plug-in excel2latex (http://www.ctan.org/tex-archive/support/excel2latex/) an.

damit lässt sich die atbelle in latex-code transferieren. du musst eventuell in deinem code noch anpassungen vornehmen um die tabelle besser aussehen zu lassen, aber das wichtigeste ist, denke ich, dass die zahlen drin sind.

gruss

zero82
28-04-2010, 10:07
Hallo,

ich habe es versucht die Tabelle in pdf zu konvertieren und anschließend über includepdf in das Dokument einzubauen. Aber mit folgendem Problem:

Er fügt die gesamte Seite in das Dokument ein, sodass die Tabelle nicht an geeigneter Stelle platziert wird, sondern oben auf der Seite. Wie wäre das am besten zu lösen?

Mit dem Excel Plugin formatiert er zwar die Tabelle in LAtex um, aber leider nicht so wie in Excel formatiert. Ich hätte gerne die einzelnen Zeilen in grau schattiert. Hier der Code:


% Table generated by Excel2LaTeX from sheet 'Tabelle1'
\begin{table}[htbp]
\centering
\caption{Add caption}
\begin{tabular}{cccccc}
\addlinespace
\toprule
& {\bf LR} & {\bf Barwert LR} & {\bf Zinsanteil} & {\bf Tilgunsanteil} & {\bf Verbindlichkeit} \\
\midrule
{\bf 2008} & 12.000\texteuro & 10.938,80\texteuro & 2.910,30\texteuro & 9.089,70\texteuro & 30.000\texteuro \\
{\bf 2009} & 12.000\texteuro & 10.938,80\texteuro & 2.028,51\texteuro & 9.971,49\texteuro & 20.910,30\texteuro \\
{\bf 2010} & 12.000\texteuro & 10.938,80\texteuro & 1.061,17\texteuro & 10.938,80\texteuro & 10.938,80\texteuro \\
\bottomrule
\end{tabular}
\label{tab:addlabel}
\end{table}

Xenara
28-04-2010, 10:42
Stimmt, in Excel kann man zwar Diagramme allein in ein PDF drucken, aber bei Zellen wird immer ein fixes Papierformat verwendet. Du könntest es in Inkscape zuschneiden (der Qualitätsverlust sollte sich in Grenzen halten, da es ja eine Vektordatei bleibt, ich aber schon festgestellt, dass bei Text die Abstände geändert werden).

Die schönere Variante wäre, aus Excel nur die Werte zu übernehmen und die Formatierung in LaTeX zu machen. Dafür würde ich die Tabelle im Excel so rudimentär wie möglich lassen. Ich leg mir für sowas ein neues Excel-Sheet an und lösche alle Formatierung raus, sodass nur die Anordnung, Text und Zahlen (mit den gewünschten Kommastellen) übrig bleiben, was dann mit dem Makro konvertiert wird.
Denn sowas wie in deinem Beispielcode mit den vielen "{\bf ...}" überall finde ich persönlich sehr unschön, unflexibel und verwirrend, das geht wesentlich schöner:
Du kannst den Fettdruck z.B. der ersten Spalte mit einer Definition machen (\usepackage{array}), und eingefärbte Zeilen gehen auch (\usepackage{colortab}), und sogar alternierende Farben sind möglich (afaik auch über colortab, bin da aber gerade nicht sicher).

Curryhunter
28-04-2010, 12:29
Hallo,
und in Ergänzung zu Xenara´s Vorschlag: Es ist dann in Excel auch super einfach, z.B. die Prozentzeichen und \\ und evtl. multirows und -columns einzufügen.

Ich erstelle mir die Tabellen auch meistens erst in Excel, füge die LaTeX-Befehle hinzu und kopier das dann einfach in mein LaTeX-Dokument. Dann behalte ich auch bei komplexen Tabellen den Überblick:)

Grüße
Stefan

zero82
28-04-2010, 18:56
Ja ich habe mich mittlerweile in das Tabellenformatieren eingearbeitet. Jetzt kriege ich auch schattierte Zeilen hin, so wie ich das auch haben will. Nur eine Frage hatte ich da noch:

Wie kann man noch in die Spalten Linien setzen und einen fetten Rahmen um die Tabelle hätte ich auch noch gerne. Hat vielleicht einer ne Lösung parat?

Viele Grüße

zero82
28-04-2010, 22:29
Hallo,

ich habe es geschafft auch die vertikalen Linien hinzubekommen. Ein kleines Problemchen hätte ich das noch, dann wäre ich überaus glücklich. Ich möchte den linken und rechten Rand der Tabelle mit einer dicken durchgezogenen Linie haben. Mit einer einfachen Linie geht es ja aber, die Linie sollte in der Breite wie die \toprule und \bottomrule sein. Ich habe die entsprechende Stelle rot markiert. Da sollte eine dickere Linie sein, aber wie?

Hier ein MB:


\documentclass[]{scrbook}
\usepackage[table]{xcolor}
\usepackage{colortbl,booktabs,calc}
\usepackage{textcomp}

\begin{document}

\begin{table}[htbp]
\centering
\caption{Add caption}
\begin{minipage}{\textwidth}
\begin{tabular}{|c|c|c|c|c|c|}
%\addlinespace
\toprule
& {\bf LR} & {\bf Barwert LR} & {\bf Zinsanteil} & {\bf Tilgunsanteil} & {\bf Verbindlichkeit} \\
\midrule

\rowcolor{gray!50}\hline
{\bf 2008} & 12.000 \texteuro & 10.938,80 \texteuro & 2.910,30 \texteuro & 9.089,70 \texteuro & 30.000,00 \texteuro \\
\hline {\bf 2009} & 12.000 \texteuro & 10.938,80 \texteuro & 2.028,51 \texteuro & 9.971,49 \texteuro & 20.910,30 \texteuro \\
\rowcolor{gray!50}\hline
{\bf 2010} & 12.000 \texteuro & 10.938,80 \texteuro & 1.061,17 \texteuro & 10.938,80 \texteuro & 10.938,80 \texteuro \\

\bottomrule
\end{tabular}
\footnotesize \\
\textbf{Quelle:} xy Quellenangabe\\
\textbf{Erklärung:} Dies ist eine Erklärung für die Tabelle.
\end{minipage}
\label{tab:addlabel}
\end{table}

\end{document}

ÜBer eine Antwort wäre ich dankbar.

Curryhunter
29-04-2010, 09:18
Hallo,
warum willst du überhaupt so viele Auszeichnungen in Deiner Tabelle haben? Vergleiche mal die beiden Tabellen im Beispiel:


\documentclass[]{scrbook}
\usepackage[table]{xcolor}
\usepackage{colortbl,booktabs,calc}
\usepackage{textcomp}

\begin{document}

\begin{table}[htbp]
\centering
\caption{Add caption}
\begin{minipage}{\textwidth}
\begin{tabular}{|c|c|c|c|c|c|}
%\addlinespace
\toprule
& {\bf LR} & {\bf Barwert LR} & {\bf Zinsanteil} & {\bf Tilgunsanteil} & {\bf Verbindlichkeit} \\
\midrule

\rowcolor{gray!50}\hline
{\bf 2008} & 12.000 \texteuro & 10.938,80 \texteuro & 2.910,30 \texteuro & 9.089,70 \texteuro & 30.000,00 \texteuro \\
\hline {\bf 2009} & 12.000 \texteuro & 10.938,80 \texteuro & 2.028,51 \texteuro & 9.971,49 \texteuro & 20.910,30 \texteuro \\
\rowcolor{gray!50}\hline
{\bf 2010} & 12.000 \texteuro & 10.938,80 \texteuro & 1.061,17 \texteuro & 10.938,80 \texteuro & 10.938,80 \texteuro \\

\bottomrule
\end{tabular}
\footnotesize \\
\textbf{Quelle:} xy Quellenangabe\\
\textbf{Erklärung:} Dies ist eine Erklärung für die Tabelle.
\end{minipage}
\label{tab:addlabel}
\end{table}
\begin{table}[htbp]
\centering
\caption{Add caption}
\begin{minipage}{\textwidth}
\begin{tabular}{cccccc}
%\addlinespace
\toprule
& {\bf LR} & {\bf Barwert LR} & {\bf Zinsanteil} & {\bf Tilgunsanteil} & {\bf Verbindlichkeit} \\
\midrule

\rowcolor{gray!50}
{\bf 2008} & 12.000 \texteuro & 10.938,80 \texteuro & 2.910,30 \texteuro & 9.089,70 \texteuro & 30.000,00 \texteuro \\
{\bf 2009} & 12.000 \texteuro & 10.938,80 \texteuro & 2.028,51 \texteuro & 9.971,49 \texteuro & 20.910,30 \texteuro \\
\rowcolor{gray!50}
{\bf 2010} & 12.000 \texteuro & 10.938,80 \texteuro & 1.061,17 \texteuro & 10.938,80 \texteuro & 10.938,80 \texteuro \\

\bottomrule
\end{tabular}
\footnotesize \\
\textbf{Quelle:} xy Quellenangabe\\
\textbf{Erklärung:} Dies ist eine Erklärung für die Tabelle.
\end{minipage}
\label{tab:addlabel1}
\end{table}
\end{document}

Die farbliche Unterlegung ist doch bereits völlig ausreichend, mehr Linien stören nur den Lesefluss und sind obendrein auch noch häßlich!
Grüße
Stefan

zero82
29-04-2010, 09:29
Hallo,

ich finde die Zweite Version wirklich schöner. Jetzt habe ich die horizontalen und vertikalen Linien im Beispiel weggelassen, aber ich würde mir gerne noch einmal anschauen wollen, die ein dicker Rahmen und die Tabelle aussieht. Wie wäre das denn am besten zu bewerkstelligen?

Viele Grüße

zero82
29-04-2010, 13:32
Hallo hat denn keiner eine Lösung parat?

Es geht ja nur um eine fette Umrandung der Tabelle! Das dürfte ja wohl nicht so schwer sein bei den ganzen Profis hier im Forum !

Danke schonmal
zero

u_fischer
29-04-2010, 13:58
Nun booktabs verträgt sich nicht sonderlich gut mit senkrechten Linien. Da gibt es Löcher, du musst daher entweder \fbox benutzen, oder einen neuen \hline-Befehl definieren.


\documentclass[parskip]{scrbook}
\usepackage{booktabs,array}
\newcolumntype{I}{!{\vrule width \heavyrulewidth}}

\begin{document}
\begin{tabular}{IccI}
\toprule
a&b\\
c&c\\
\bottomrule
\end{tabular}

\fboxrule=\heavyrulewidth
\fboxsep=0pt

\fbox{\begin{tabular}{cc}
a&b\\
c&c
\end{tabular}}

\newlength\savedwidth
\newcommand\whline{\noalign{\global\savedwidth\arr ayrulewidth\global\arrayrulewidth\heavyrulewidth}%
\hline
\noalign{\global\arrayrulewidth\savedwidth}}%
\begin{tabular}{IccI}
\whline
a&b\\
c&c\\
\whline
\end{tabular}


\end{document}

zero82
29-04-2010, 18:00
Hallo,

ja das ist schon "fast" die Formatierung die ich suche. Jedoch eine kleine Formatierung wäre da noch. Und zwar möchte ich die Schattierung links bündig am Rahmen haben, da ist momentan ein kleiner Abstand von 2mm zu finden. Wenn die Zeile bündig am linken Rahmen ansetzt bin ich wunschlos glücklich.

Hier der Code:


\documentclass[]{scrbook}
\usepackage[table]{xcolor}
\usepackage{colortbl,booktabs,calc}
\usepackage{textcomp}

\begin{document}

\fboxrule=\heavyrulewidth
\fboxsep=0pt
\begin{table}[htbp]
\centering
\caption{Add caption}
\begin{minipage}{\textwidth}
\fbox{
\begin{tabular}{cccccc}
\addlinespace
%\toprule
& {\bf LR} & {\bf Barwert LR} & {\bf Zinsanteil} & {\bf Tilgunsanteil} & {\bf Verbindlichkeit} \\
%\midrule

\rowcolor{gray!50}
\hline{\bf 2008} & 12.000 \texteuro & 10.938,80 \texteuro & 2.910,30 \texteuro & 9.089,70 \texteuro & 30.000,00 \texteuro \\
\hline {\bf 2009} & 12.000 \texteuro & 10.938,80 \texteuro & 2.028,51 \texteuro & 9.971,49 \texteuro & 20.910,30 \texteuro \\
\rowcolor{gray!50}
\hline{\bf 2010} & 12.000 \texteuro & 10.938,80 \texteuro & 1.061,17 \texteuro & 10.938,80 \texteuro & 10.938,80 \texteuro \\

%\bottomrule
\end{tabular}}
\footnotesize \\
\textbf{Quelle:} xy Quellenangabe\\
\textbf{Erklärung:} Dies ist eine Erklärung für die Tabelle.
\end{minipage}
\label{tab:addlabel}
\end{table}
\end{document}

u_fischer
29-04-2010, 18:12
Mein Code:


\fbox{\begin{tabular}

Dein Code:


\fbox{
\begin{tabular}

Undjetztrate,woderAbstandherkommt

Bilbo
29-04-2010, 18:19
So wie Ulrike oder


\fbox{%
\begin{tabular}

Bilbo

zero82
29-04-2010, 18:31
Ahhhh :cool:

was ein Prozentzeichen, oder ein Abstand alles bewirken kann. Ich liebe LaTex... Danke nochmal für die schnelle Antwort!

:)

zero82
01-05-2010, 12:31
HALLO,

ein weiteres PRoblem mit den Tabellen. Ich möchte gerne die Tabelle um 90 Grad rotieren lassen. Caption und Unterschrift sollte ebenfalls mit rotieren. Ich habe das Packet rotating installiert. Er rotiert zwar jetzt die Tabelle und die Caption aber der Text rechts von der Tabelle fehlt.

ICh möchte gerne auch Text rechts von der Tabelle haben. Und ausserdem stimmt was mit der Unterschrift der Tabelle nicht, er hat die Erklärung und die Quelle auf einer Zeile. Ich hätte gerne die Quelle und die Erklärung der Tabelle untereinander auf zwei Zeilen. Wie wäre das am besten zu lösen. Hier ein MB:


\documentclass[]{scrbook}
\usepackage[table]{xcolor}
\usepackage{colortbl,booktabs,calc}
\usepackage{textcomp}
\usepackage{rotating}

\begin{document}

Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.

\fboxrule=\heavyrulewidth
\fboxsep=0pt
\begin{table}[htbp]
\centering
\rotcaption{Add caption}
\begin{minipage}{\textwidth}
\fbox{%
\begin{sideways}
\begin{tabular}{cccccc}
\addlinespace
%\toprule
& {\bf LR} & {\bf Barwert LR} & {\bf Zinsanteil} & {\bf Tilgungsanteil} & {\bf Verbindlichkeit} \\
%\midrule

\rowcolor{gray!50}
\hline{\bf 2008} & 12.000 \texteuro & 10.938,80 \texteuro & 2.910,30 \texteuro & 9.089,70 \texteuro & 30.000,00 \texteuro \\
\hline {\bf 2009} & 12.000 \texteuro & 10.938,80 \texteuro & 2.028,51 \texteuro & 9.971,49 \texteuro & 20.910,30 \texteuro \\
\rowcolor{gray!50}
\hline{\bf 2010} & 12.000 \texteuro & 10.938,80 \texteuro & 1.061,17 \texteuro & 10.938,80 \texteuro & 10.938,80 \texteuro \\

%\bottomrule
\end{tabular}
\end{sideways}}
\begin{sideways}
\footnotesize \\
\textbf{Quelle:} xy Quellenangabe\\\\
\textbf{Erklärung:} Dies ist eine Erklärung für die Tabelle.
\end{sideways}
\end{minipage}
\label{tab:addlabel}
\end{table}

Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.Viel Text.

\end{document}

voss
01-05-2010, 15:04
ein weiteres PRoblem mit den Tabellen. Ich möchte gerne die Tabelle um 90 Grad rotieren lassen. Caption und Unterschrift sollte ebenfalls mit rotieren. Ich habe das Packet rotating installiert. Er rotiert zwar jetzt die Tabelle und die Caption aber der Text rechts von der Tabelle fehlt.

ICh möchte gerne auch Text rechts von der Tabelle haben. Und ausserdem stimmt was mit der Unterschrift der Tabelle nicht, er hat die Erklärung und die Quelle auf einer Zeile. Ich hätte gerne die Quelle und die Erklärung der Tabelle untereinander auf zwei Zeilen. Wie wäre das am besten zu lösen. Hier ein MB:



\documentclass[ngerman]{scrbook}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{eurosym,lmodern}
\usepackage[table]{xcolor}
\usepackage{colortbl,booktabs,calc}
\usepackage{rotating,caption,tabularx,blindtext,ba bel}

\newcolumntype{P}[1]{>{\vspace*{0.6\textwidth}\begin{turn}{90}}p{#1}<{\end{turn}}}

\begin{document}

\blindtext

\noindent
\begin{tabularx}{\linewidth}{@{} P{0.4\linewidth} X @{}}
\parbox{\linewidth}{%
\captionof{table}{Add caption\newline
{\footnotesize
\textbf{Quelle:} xy Quellenangabe\newline
\textbf{Erklärung:} Dies ist eine Erklärung für die Tabelle.
\label{tab:addlabel}}}

\begin{tabular}{cccccc}\addlinespace\toprule
& \bf LR & \bf Barwert LR & \bf Zinsanteil & \bf Tilgungsanteil & \bf Verbindlichkeit \\\midrule
\rowcolor{gray!50}\hline
\bf 2008 & 12.000 \euro & 10.938,80 \euro & 2.910,30 \euro & 9.089,70 \euro & 30.000,00 \euro \\\hline
\bf 2009 & 12.000 \euro & 10.938,80 \euro & 2.028,51 \euro & 9.971,49 \euro & 20.910,30 \euro \\
\rowcolor{gray!50}\hline
\bf 2010 & 12.000 \euro & 10.938,80 \euro & 1.061,17 \euro & 10.938,80 \euro & 10.938,80 \euro \\
\bottomrule
\end{tabular}
}
&
\blindtext
\end{tabularx}

\end{document}

Herbert