Seite 1 von 3

Ausrichtung multicolumn mit Siunitx

Verfasst: Do 26. Sep 2013, 16:51
von thor
Hallo,

ich bastel mir gerade ein mehr oder weniger selbstrechnendes T-Konto. Nun habe ich aber das Problem, dass die Summe in den Multicolumns nicht vernünftig ausgerichtet wird, ich weiß mir leider keinen Rat mehr und wäre für jede Hilfe sehr dankbar.

Hier ist der Code:
\documentclass[fontsize=11pt,fleqn,parskip=half*]{scrartcl} 
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{tabularx,booktabs}
\usepackage{spreadtab}
\usepackage{siunitx}
\usepackage{eurosym}
\usepackage{kpfonts}

% Siunitx
\sisetup{
	group-four-digits=true,			% Tausenerzahlen gruppieren
	locale = DE,					% Deutsche Lokalisierung
	detect-all,						% gleiche Schrift wie im Text
	group-separator = {.},			% Punkt als Tausendertrenner
	round-mode=places,
	round-precision=2,
	round-integer-to-decimal=true,	
	per-mode=symbol,
	table-number-alignment = center,
	table-space-text-post = \,\si {€},
	%text-rm=\sffamily
}

\newcolumntype{D}{S[table-format=7.2]}
\newcommand{\mc}[3]{\multicolumn{#1}{#2}{#3}}
\newcommand\tabstil{\sffamily\small}

\begin{document}

\begin{spreadtab}{{tabularx}{\linewidth}{|X|D|X|D|}}
	% Konto Nr. 
	@\mc{4}{c}{\tabstil\textbf{TA u. Maschinen}}\\
	@\mc{1}{l}{\tabstil\textbf{Soll}} &@\mc{2}{c}{}
	& @\mc{1}{r}{\tabstil\textbf{Haben}} \\
	\hline
	% Kto 	& Soll				& Kto		& Haben \\
	@ FaLL	& :={500000.25}\,€  & @ Fuhrp. 	& :={1000}\,€ \\
	@ VaLL	& :={50.28}\,€  	& @ Kasse  	& :={123456.28}\,€ \\
	\hline
	\addlinespace
	@\mc{1}{l}{}
	&\mc{1}{r}{\tablenum[table-format=7.2]{:={sum(b3:b4)}}\,€}
	&@\mc{1}{l}{}
	&\mc{1}{r}{\tablenum[table-format=7.2]{:={sum(d3:d4)}}\,€}
\end{spreadtab}	

\end{document}
Viele Grüße

Thorsten

Verfasst: Fr 27. Sep 2013, 12:23
von esdd
Du könntest auf die vertikalen Linien zu verzichten:
\begin{spreadtab}{{tabularx}{\linewidth}{XD!{\quad}XD}} 
    % Konto Nr.  
    @\mc{4}{c}{\tabstil\textbf{TA u. Maschinen}}\\ 
    @\mc{1}{l}{\tabstil\textbf{Soll}} &@\mc{2}{c}{} 
    & @\mc{1}{r}{\tabstil\textbf{Haben}} \\ 
    \hline 
    % Kto    & Soll            & Kto      & Haben \\ 
    @ FaLL   & :={500000.25}\,€  & @ Fuhrp.    & :={1000}\,€ \\ 
    @ VaLL   & :={50.28}\,€     & @ Kasse     & :={123456.28}\,€ \\ 
    \hline 
    \addlinespace 
    @\mc{1}{l}{} 
    & :={sum(b3:b4)}\,€ 
    & @\mc{1}{l}{} 
    & :={sum(d3:d4)}\,€ \\
\end{spreadtab} 
oder zwei zusätzliche Spalten zu verwenden:
\begin{spreadtab}{{tabularx}{\linewidth}{|X|D@{}c@{}|X|D@{}c@{}|}} 
    % Konto Nr.  
    @\mc{6}{c}{\tabstil\textbf{TA u. Maschinen}}\\ 
    @\mc{1}{l}{\tabstil\textbf{Soll}} &@\mc{3}{c}{} 
    &@\mc{1}{r}{\tabstil\textbf{Haben}}&@\mc{1}{c}{} \\ 
    \hline 
     %Kto    & Soll            & Kto      & Haben \\ 
    @ FaLL   & :={500000.25}\,€  && @ Fuhrp.    & :={1000}\,€& \\ 
    @ VaLL   & :={50.28}\,€     && @  Kasse     & :={123456.28}\,€& \\ 
    \hline 
    \addlinespace 
    @\mc{1}{l}{}
    & :={sum(b3:b4)}\,€ & @\mc{1}{c}{}
    & @\mc{1}{l}{}
    & :={sum(e3:e4)}\,€ & @\mc{1}{c}{}
\end{spreadtab}
Gruß
Elke

Verfasst: Fr 27. Sep 2013, 16:30
von thor
Danke schön :D :D :D

beide Vorschläge funktionieren, den ersten finde ich besser, allerdings stellen wohl alle Schulbuchverlage T-Konten mit vertikalen Linien dar, ich finde es aber ohne viel besser und vor allem auch einfacher, weil nämlich immer zwei Tabellen in einer Minipage nebeneinander stehen sollen, da ist es natürlich immer besser so wenig Spalten wie möglich zu verwenden :)

Auf die Idee mit dem \quad in der Präambel wäre ich so nicht gekommen - klasse!

Jetzt fehlt mir zu meinem Glück eigentlich nur noch eine Buchhalternase:

http://de.wikipedia.org/wiki/Buchhalternase

um überflüssigen Platz in den T-Konten zu entwerten, ist leider Vorschrift :?

Hast jemand dazu vielleicht auch noch eine Idee? Geht das mit tikz oder pgfplots?

Herzliche Grüße
Thorsten

Verfasst: Fr 27. Sep 2013, 21:41
von esdd
Hier ist mal ein Vorschlag, der aber zwei Durchläufe braucht, damit die Linie dort ist, wo sie hin soll:
\documentclass[fontsize=11pt,fleqn,parskip=half-]{scrartcl} 
\usepackage[ngerman]{babel} 
\usepackage[utf8]{inputenc} 
\usepackage[T1]{fontenc} 
\usepackage{tabularx,booktabs} 
\usepackage{spreadtab} 
\usepackage{siunitx} 
\usepackage{eurosym} 
\usepackage{kpfonts} 

\usepackage{tikz}
\usetikzlibrary{tikzmark}

% Siunitx 
\sisetup{ 
    group-four-digits=true,         % Tausenerzahlen gruppieren 
    locale = DE,               % Deutsche Lokalisierung 
    detect-all,                  % gleiche Schrift wie im Text 
    group-separator = {.},         % Punkt als Tausendertrenner 
    round-mode=places, 
    round-precision=2, 
    round-integer-to-decimal=true,   
    per-mode=symbol, 
    table-number-alignment = center, 
    table-space-text-post = \,\si {€}, 
    %text-rm=\sffamily 
} 

\newcolumntype{D}{S[table-format=7.2]} 
\newcommand{\mc}[3]{\multicolumn{#1}{#2}{#3}} 
\newcommand\tabstil{\sffamily\small} 

\begin{document} 
\begin{minipage}{\linewidth}%
\begin{spreadtab}{{tabularx}{\linewidth}{XD!{\quad}XD}} 
     % Konto Nr.   
     @\mc{4}{c}{\tabstil\textbf{TA u. Maschinen}}\\ 
     @\mc{1}{l}{\tabstil\textbf{Soll}} &@\mc{2}{c}{} 
     & @\mc{1}{r}{\tabstil\textbf{Haben}} \\ 
     \hline 
     % Kto    & Soll            & Kto      & Haben \\  
     @ FaLL   & :={500000.25}\,€  & @ Fuhrp.    & :={1000}\,€ \\ 
     @ VaLL   & :={50.28}\,€     & @ Kasse     & :={123456.28}\,€ \\ 
     @ FaLL   & :={500000.25}\,€  && @ \mc{1}{r}{\tikzmark{or1}}\\ 
     @ VaLL   & :={50.28}\,€     &&\\ 
     @ FaLL   & :={500000.25}\,€  &&\\ 
     @ VaLL   & :={50.28}\,€     & @ \mc{1}{l}{\tikzmark{ul1}}&\\ 
     \hline 
     \addlinespace 
     @\mc{1}{l}{} 
     & :={sum(b3:b8)}\,€ 
    & @\mc{1}{l}{} 
     & :={sum(d3:d8)}\,€ \\ 
\end{spreadtab}
\tikz[remember picture,overlay]\draw (pic cs:ul1)++(0,0.7ex)--+(2cm,0)--([xshift=-2cm,yshift=0.7ex]pic cs:or1)--+(2cm,0);
\end{minipage} 

\end{document} 
Gruß
Elke

Verfasst: Fr 27. Sep 2013, 23:22
von thor
Elke,

das ist genau das, was ich wollte, vielen Dank!! Du hast mir wirklich sehr geholfen :D :D :D

Tikz muss ich unbedingt noch lernen, das wird mir gerade klar!!

Herzliche Grüße

Thorsten

Vertikale Linie einfügen

Verfasst: Sa 24. Okt 2015, 10:57
von nixversteh
Hallo Elke,

ich bin bei der Suche nach einer Vorlage für T-Konten auf deinen Code gestossen, seht sehr gut aus, prima, kann ich gut für Aufgaben meiner Partnerin in der Ausbildung abH verwenden. Jetzt hätte ich eine Bitte, zwischen der Soll-Seite und Haben-Seite gehört eine vertikale Linie, kannst du sie einpflegen? Zudem steht die Bezeichnung des Kontos im Buchführungswesen auf gleicher Höhe wie Soll und Haben. Kannst du auch dies ändern?

Das wäre prima, denn ich habe kläglich versagt beim Versuch den Code zu ändern.

Vielen Dank im voraus.

Gruß

Martin

Verfasst: Sa 24. Okt 2015, 11:05
von thor
Wenn du etwas Geduld hast, melde ich mich später nochmal, ich habe inzwischen ein etwas anders Makro, habe aber jetzt keine Zeit!

VG
Thorsten

Verfasst: Sa 24. Okt 2015, 11:41
von thor
nochmal ich, hier auf die Schnelle mein persönlich *.sty file zu T-Konten, Bilanzen und mehr und dazu eine kleine Doku, die als Bedienungsanleitung dient, die entsprechenden Makros musst du dir aus dem *.sty file heraussuchen. Ich arbeite viel mit eqexam, was aber für die T-Konten und Bilanzen nicht unbedingt nötig ist. Wurschtel dich erst einmal durch und frage, wenn du nicht weiterkommst.

VG
Thorsten

...

Verfasst: Sa 24. Okt 2015, 11:43
von nixversteh
Hallo thor,

danke dir schon mal, sehe es mir gleich an, ja, ich habe Zeit.

Gruß

Martin

Verfasst: Sa 24. Okt 2015, 11:56
von Johannes_B
Bisher fehlt die Lizenz, welche Martin die Nutzung erlaubt.