PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Geldbetrag mit Eurozeichen in Tabelle an Trenner ausrichten



Sal
30-03-2020, 08:36
Guten Morgen,

ich möchte drei verschiedene Tabellen erstellen, die alle \textwidth sein sollen und in der linken Spalte einen Eurobetrag mit Eurozeichen enthalten sollen.

Nach recht langem Rumgoogeln habe ich das tabu-Paket gefunden, das ich noch gar nicht kannte. Um die Tabelle auf Textbreite zu bekommen, verwende ich einen Spaltentyp X. In folgendem Beispiel verwende ich den Spaltentyp S aus dem siunitx-Paket, um die Eurobeträge an den Trennern auszurichten:



\documentclass[a4paper,10pt]{scrartcl}

\usepackage[USenglish]{babel}
\usepackage{booktabs}
\usepackage{tabularx}
\usepackage{tabu}
\usepackage{dcolumn}
\usepackage{siunitx}
\usepackage[gen]{eurosym}



\begin{document}



\begin{table}\caption{Caption 1}
\centering
\begin{tabu}{llXS}
\toprule
No&Date&Description&Amount\\
\midrule
1&x-xx-xxxx&Item 1&\EUR{21,99}\\
\midrule
2&x-xx-xxxx&Item 2&\EUR{12,35}\\
\midrule
3&x-xx-xxxx&Item 3&\EUR{98,53}\\
\midrule
4&x-xx-xxxx&Item 4&\EUR{79,90}\\
\midrule
Sum&&&\EUR{212,77}\\
\bottomrule
\end{tabu}
\end{table}

\begin{table}\caption{Caption 2}
\centering
\begin{tabu}{llXS}
\toprule
Begin&End&Location/Description&Amount\\
\midrule
x-xx-xxxx&x-xx-xxxx&Trip 1&\EUR{403,35}\\
\midrule
x-xx-xxxx&x-xx-xxxx&Trip 2&\EUR{366,84}\\
\midrule
Sum&&&\EUR{770,19}\\
\bottomrule
\end{tabu}
\end{table}

\begin{table}\caption{Caption 3}
\centering
\begin{tabu}{XS}
\toprule
Description&Amount\\
\midrule
Item 1&\EUR{212,77}\\
\midrule
Item 2&\EUR{770,19}\\
\midrule
Sum&\EUR{982,96}\\
\bottomrule
\end{tabu}
\end{table}


\end{document}



Auf den ersten Blick sieht es gut aus. Beim genauen hinsehen ist aber offensichtlich, dass


in Tabelle 1 die Abstände zwischen Betrag und Eurozeichen unterschiedlich sind.
in den Zeilen 2-5 der Tabelle 1 der Abstand zwischen Betrag und Eurozeichen (zumindest für meine Augen) in Ordnung ist, während er bei Zeile 6 der Tabelle 1 und bei allen Beträgen in den Tabellen 2 und 3 zu groß ist.


Dies scheint etwas damit zu tun zu haben, wieviele Stellen vor dem Komma gesetzt werden. Wenn ich nälich aus dem Betrag 212.77 den Betrag 12.77 mache, dann passt der Abstand.

Durch weiteres Googeln bin ich auf den Spaltentyp D aus dem dcolumn-Paket gekommen. Mit diesem Paket sieht die Datei dann so aus:



\documentclass[a4paper,10pt]{scrartcl}

\usepackage[USenglish]{babel}
\usepackage{booktabs}
\usepackage{tabularx}
\usepackage{tabu}
\usepackage{dcolumn}
\usepackage{siunitx}
\usepackage[gen]{eurosym}



\begin{document}



\begin{table}\caption{Caption 1}
\centering
\begin{tabu}{llXD{,}{.}{3.3}}
\toprule
No&Date&Description&Amount\\
\midrule
1&x-xx-xxxx&Item 1&21,99\EUR{}\\
\midrule
2&x-xx-xxxx&Item 2&12,35\EUR{}\\
\midrule
3&x-xx-xxxx&Item 3&98,53\EUR{}\\
\midrule
4&x-xx-xxxx&Item 4&79,90\EUR{}\\
\midrule
Sum&&&212,77\EUR{}\\
\bottomrule
\end{tabu}
\end{table}

\begin{table}\caption{Caption 2}
\centering
\begin{tabu}{llXD{,}{.}{3.3}}
\toprule
Begin&End&Location/Description&Amount\\
\midrule
x-xx-xxxx&x-xx-xxxx&Trip 1&\EUR{403,35}\\
\midrule
x-xx-xxxx&x-xx-xxxx&Trip 2&\EUR{366,84}\\
\midrule
Sum&&&\EUR{770,19}\\
\bottomrule
\end{tabu}
\end{table}

\begin{table}\caption{Caption 3}
\centering
\begin{tabu}{XD{,}{.}{3.3}}
\toprule
Description&Amount\\
\midrule
Item 1&\EUR{212,77}\\
\midrule
Item 2&\EUR{770,19}\\
\midrule
Sum&\EUR{982,96}\\
\bottomrule
\end{tabu}
\end{table}



\end{document}


Die Art uns Weise, wie die Beträge und das Eurosymbol jetzt gesetzt werden gefällt mir sehr gut Allerdings wird der Kolumnentitel jetzt sehr weit nach links verschoben. Außerdem wird es kursiv gesetzt. Ich nehme an, dass das Wort Amount als "Stellen vor dem Komma" gesehen wird, da es genau auf Höhe des Punktes endet.

Könnt ihr mir vielleicht sagen, wie ich die Tabellen so setze, dass die Kolumnentitel alle gleich sind, die Beträge mit dem Eurozeichen aber so gesetzt werden, dass am Trenner ausgerichtet wird und das Eurozeichen den richtigen Abstand vom Betrag hat?

Vielen Dank schonmal

David

Sal
01-04-2020, 15:08
Hallo zusammen,

vielen Dank für's Anschauen.

Ich habe es inzwischen so hinbekommen, dass es zumindest für mich optisch gut aussieht. Ich habe dafür den Kolumnentitel in eine \multicolumn gepackt:


\documentclass[a4paper,10pt]{scrartcl}

\usepackage[USenglish]{babel}
\usepackage{booktabs}
\usepackage{tabularx}
\usepackage{tabu}
\usepackage{dcolumn}
\usepackage{siunitx}
\usepackage[gen]{eurosym}



\begin{document}



\begin{table}\caption{Caption 1}
\centering
\begin{tabu}{llXD{,}{.}{3.4}}
\toprule
No&Date&Description&\multicolumn{1}{r}{Amount}\\
\midrule
1&x-xx-xxxx&Item 1&21,99\EUR{}\\
\midrule
2&x-xx-xxxx&Item 2&12,35\EUR{}\\
\midrule
3&x-xx-xxxx&Item 3&98,53\EUR{}\\
\midrule
4&x-xx-xxxx&Item 4&79,90\EUR{}\\
\midrule
Sum&&&212,77\EUR{}\\
\bottomrule
\end{tabu}
\end{table}

\begin{table}\caption{Caption 2}
\centering
\begin{tabu}{llXD{,}{.}{3.4}}
\toprule
Begin&End&Location/Description&\multicolumn{1}{r}{Amount}\\
\midrule
x-xx-xxxx&x-xx-xxxx&Trip 1&\EUR{403,35}\\
\midrule
x-xx-xxxx&x-xx-xxxx&Trip 2&\EUR{366,84}\\
\midrule
Sum&&&\EUR{770,19}\\
\bottomrule
\end{tabu}
\end{table}

\begin{table}\caption{Caption 3}
\centering
\begin{tabu}{XD{,}{.}{3.4}}
\toprule
Description&\multicolumn{1}{r}{Amount}\\
\midrule
Item 1&\EUR{212,77}\\
\midrule
Item 2&\EUR{770,19}\\
\midrule
Sum&\EUR{982,96}\\
\bottomrule
\end{tabu}
\end{table}



\end{document}


Viele Grüße

David