Farbe in \multicolumn geht nicht bis Zellenende

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Farbe in \multicolumn geht nicht bis Zellenende

von bella9091 » Do 27. Dez 2012, 06:59

Vielen Dank, genau das, was ich gesucht habe.

von DT » So 23. Dez 2012, 10:39

ok das erklärt einiges... dachte bisher die Linien werden einfach über die Box gezeichnet und nicht dazwischen...
Vielen dank...

von rais » Sa 22. Dez 2012, 12:51

DT hat geschrieben:jetzt frage ich mich allerdings woher die 0.1 bzw. 0.9mm zusätzlich kommen?
Du setzt vertikale Linien zwischen die einzelnen Spalten, deshalb kommt Deine \multicolumn-Box um n-1 Liniendicken zu kurz.
\multicolumn{7}{C{\dimexpr 70mm+6\arrayrulewidth\relax}|}{\dg hier wird das Feld nun bis zum Ende gefüllt}
MfG
Rainer

von DT » Sa 22. Dez 2012, 11:51

Aha... etwas merkwürdig weil ich den ja eigentlich extra auf 0mm gesetzt habe (
\setlength{\tabcolsep}{0mm} 
) aber gut wenn dem halt so ist...

danke für deine hilfe

von Epllus » Sa 22. Dez 2012, 10:00

Die 0,1mm bzw. 0,9mm kommen von dem \tablecolsep, diese legt
den Abstand fest, der innerhalb einer tabular-Umgebung vor und nach den einzelnen Spalten jeweils eingefügt wird, also den halben Abstand zwischen zwei Spalten.
Quelle: http://www.weinelt.de/latex/tabcolsep.html

Dadurch wird deine Tabelle etwas länger als 90mm.

Hoffe es hilft,
Epllus

von DT » Sa 22. Dez 2012, 08:59

Danke das geht... jetzt frage ich mich allerdings woher die 0.1 bzw. 0.9mm zusätzlich kommen? kannst du mir das vll. noch sagen?

von Epllus » Fr 21. Dez 2012, 17:47

Versuch es mit dem Code:
\documentclass[a4paper,12pt]{scrreprt}   
\usepackage{ngerman}                     %neue deutsche Rechtschreibung 
\usepackage[utf8]{inputenc}                  %direkte Eingabe von deutschen Sonderzeichen 
\usepackage[T1]{fontenc}                  %Trennung von Wörtern mit Umlauten 

\usepackage{array} 
\newcolumntype{C}[1]{>{\centering}m{#1}} 

\usepackage{rotating} 
\newcommand{\side}[1]{\begin{sideways}\parbox{21.5mm}{#1}\end{sideways}} 

\usepackage{colortbl} 
\newcommand{\dg}{\cellcolor[gray]{0.7}} 
\newcommand{\mg}{\cellcolor[gray]{0.8}} 
\newcommand{\hg}{\cellcolor[gray]{0.9}} 

\usepackage{multirow} 

\setlength{\tabcolsep}{0mm}       %zusätzlicher abstand zwischen den Spalten 
\renewcommand{\arraystretch}{0}    %zusätzlicher abstand zwischen den Zeilen (Faktor) 

\begin{document} 

\begin{tabular}{|C{10mm}|C{10mm}|C{10mm}|C{10mm}|C{10mm}|C{10mm}|C{10mm}|C{10mm}|C{10mm}|C{0mm}}
\hline 
\multicolumn{2}{|C{20mm}|}{}&\multicolumn{5}{C{50mm}|}{Kriterium A}&\multirow{2}{*}[7.5mm]{\side{Summe}}&\multirow{2}{*}[7.5mm]{\side{Wichtung}}&\\[15mm]\cline{3-7} 
\multicolumn{2}{|C{20mm}|}{}& K1& K2& K3& K4& K5&&&\\[10mm]\hline 
\multirow{5}{*}{\side{\hspace{-10mm} Kriterium B}} 
&\hg K1   &\hg 1&\hg 0&\hg 1&\hg 0&\hg 2&\hg 4&\hg 16&\\[10mm] 
&     K2   &    2&    1&    2&      0&    2&      7&    28&\\[10mm] 
&\hg K3 &\hg 1&\hg 0&\hg 1&\hg 0&\hg 1&\hg 3&\hg 12&\\[10mm] 
&    K4 &    2&    2&    2&      1&    2&    9&    36&\\[10mm] 
&\hg K5 &\hg 0&\hg 0&\hg 1&\hg 0&\hg 1&\hg 2&\hg  8&\\[10mm]\hline 
\multicolumn{7}{|C{70mm}|}{Summe}& 25& 100&\\[10mm]\hline 
\multicolumn{2}{|C{20.1mm}|}{\dg Legende}&\multicolumn{7}{C{70.9mm}|}{\dg hier wird das Feld nicht bis zum Ende gefüllt 
}&\\[10mm]\hline 

\end{tabular} 

\end{document} 
Wie du bemerkst steht in der letzten Zeile statt 20mm, 20.1mm und statt 70mm, 70,9.
Die Antwort ist eigentlich einfach:
Du hast LaTeX befohlen, ein 70mm langes graues Kasterl zu machen, obwohl es eigentlich 70,9mm lang sein sollte. Darum der weiße Rand.

Hoffe es hilft,
Epllus.

Farbe in \multicolumn geht nicht bis Zellenende

von DT » Fr 21. Dez 2012, 15:42

Hallo,

wie die Überschrift schon sagt hab ich nen Problem mit \multicolumn und \cellcolor. In der letzten Zeile geht die Farbe nicht bis zum Ende der Zelle... warum auch immer. Wenn ich die Zeilen oberhalb der Summenzeile ausklammere gehts aber (fast).
Den Code muss ich wohl noch ein bisschen erklären damit man auch sieht warum der so ist. Also ich wollte horizontal und vertikal zentrierte Felder mit einer festen Breite. Daher habe ich die C{}-Spalten definiert (kopiert von irgendwo). Ausserdem wollte ich die Felder in denen die Zahlen stehen quadratisch deswegen sind \tabcolsep und \arraystretch jeweils auf 0(mm) gesetzt. So jetzt noch zu der letzten C{0mm}-Spalte die ist mit in der Tabelle weil sonst der Inhalt der (eigentlich) letzten Spalte nach oben rutscht (keine Ahnung warum aber es geht ja so erstmal).
Hier der Code:
\documentclass[a4paper,12pt]{scrreprt}	
\usepackage{ngerman}							%neue deutsche Rechtschreibung
\usepackage[utf8]{inputenc}						%direkte Eingabe von deutschen Sonderzeichen
\usepackage[T1]{fontenc}						%Trennung von Wörtern mit Umlauten

\usepackage{array}
\newcolumntype{C}[1]{>{\centering}m{#1}}

\usepackage{rotating}
\newcommand{\side}[1]{\begin{sideways}\parbox{21.5mm}{#1}\end{sideways}}

\usepackage{colortbl}
\newcommand{\dg}{\cellcolor[gray]{0.7}}
\newcommand{\mg}{\cellcolor[gray]{0.8}}
\newcommand{\hg}{\cellcolor[gray]{0.9}}

\usepackage{multirow}

\setlength{\tabcolsep}{0mm} 		%zusätzlicher abstand zwischen den Spalten
\renewcommand{\arraystretch}{0} 	%zusätzlicher abstand zwischen den Zeilen (Faktor)

\begin{document}

\begin{tabular}{|C{10mm}|C{10mm}|C{10mm}|C{10mm}|C{10mm}|C{10mm}|C{10mm}|C{10mm}|C{10mm}|C{0mm}}
\hline
\multicolumn{2}{|C{20mm}|}{}&\multicolumn{5}{C{50mm}|}{Kriterium A}&\multirow{2}{*}[7.5mm]{\side{Summe}}&\multirow{2}{*}[7.5mm]{\side{Wichtung}}&\\[15mm]\cline{3-7}
\multicolumn{2}{|C{20mm}|}{}& K1& K2& K3& K4& K5&&&\\[10mm]\hline
\multirow{5}{*}{\side{\hspace{-10mm} Kriterium B}}
&\hg K1	&\hg 1&\hg 0&\hg 1&\hg 0&\hg 2&\hg 4&\hg 16&\\[10mm]
& 	 K2	&	 2&    1&	 2&	   0&	 2&	   7&    28&\\[10mm]
&\hg K3 &\hg 1&\hg 0&\hg 1&\hg 0&\hg 1&\hg 3&\hg 12&\\[10mm]
&    K4 &    2&    2&	 2&	   1&	 2&    9&    36&\\[10mm]
&\hg K5 &\hg 0&\hg 0&\hg 1&\hg 0&\hg 1&\hg 2&\hg  8&\\[10mm]\hline
\multicolumn{7}{|C{70mm}|}{Summe}& 25& 100&\\[10mm]\hline
\multicolumn{2}{|C{20mm}|}{\dg Legende}&\multicolumn{7}{C{70mm}|}{\dg hier wird das Feld nicht bis zum Ende gefüllt
}&\\[10mm]\hline

\end{tabular}

\end{document}
Kann mir jemand erklären wo das Problem liegt... und am besten noch eine Lösung dazu anbieten?
Andere Vorschläge sind auch willkommen.

Nach oben