multirow und colortbl vs. vertikale Zellenzentrierung

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: multirow und colortbl vs. vertikale Zellenzentrierung

von johannes_ » So 29. Sep 2013, 15:58

passt, danke für die schnelle Hilfe.

von Stefan Kottwitz » So 29. Sep 2013, 15:48

Mit passender Einfärbung kriegen wir es hin:
\hhline{>{\arrayrulecolor[gray]{0.5}}->{\arrayrulecolor{black}}---}
Stefan

von johannes_ » So 29. Sep 2013, 15:40

Hallo Stefan,

ich habe nun den Befehl \hhline verwendet. Jedoch bleit in der multirow-Zelle eine weiße, eigentlich unsichtbare hline.

Hier das Beispiel:
\documentclass[fontsize=12pt, paper=a4]{scrreprt}
\usepackage[T1]{fontenc} % Ligaturen, richtige Umlaute im PDF
\usepackage[utf8]{inputenc}% UTF8-Kodierung für Umlaute usw
\usepackage[ngerman]{babel} % Silbentrennung
\usepackage{multirow} % Tabellen-Zellen über mehrere Zeilen
\usepackage{multicol} % mehre Spalten auf eine Seite
\usepackage{colortbl}
\usepackage[babel,german=guillemets]{csquotes}
\usepackage{hhline}

\begin{document}

\begin{tabular}{|c|c|c|c|}
\hhline{~~--} 
\multicolumn{2}{c|}{}&\multicolumn{2}{|>{\columncolor[gray]{0.5}}c|} {\textcolor {white}{\textbf {Rasen}}}\\
\hhline{~~--} 
\multicolumn{2}{c|}{}& \cellcolor[gray]{0.9}{hoher Preis} & \cellcolor[gray]{0.9}{niedriger Preis}\\
\hline
\cellcolor[gray]{0.5}& \cellcolor[gray]{0.9}{hoher Preis} & 4;4 & 1;6 \\
\hhline{~---} 
\multirow{-2}{*}{\cellcolor[gray]{0.5}\textcolor {white}{\textbf {Wiese}}}  & \cellcolor[gray]{0.9}{niedriger Preis} & 6;1 & 3;3\\
\hline
\end{tabular}

\end{document}
Die vertikalen Linien habe ich mit Hilfe des anderen Threats entfernen können.

von Stefan Kottwitz » So 29. Sep 2013, 15:08

Hallo Johannes,

helfen könnte hhline:
\usepackage{hhline}

...
\cellcolor[gray]{0.5}& \cellcolor[gray]{0.9}{hoher Preis} & 4;4 & 1;6 \\
\hhline{~---}
\multirow{-2}{*}{...
Wegen Entfernen der Linien oben links siehe Wie kriege ich bei ausgewählten Zellen Linien in der Tabelle weg?

Stefan


Stefan

von johannes_ » So 29. Sep 2013, 14:33

Hallo,

vielen Dank für die schnelle Antwort.
Ich habe die Änderungsvorschläge übernommen, jedoch funktioniert bei mir der Befehl \cline{1-4} vor \multirow nicht. Es wird nur in Spalte 3 und 4 eine Linie erzeugt. Ebenso funktioniert \cline über und unter dem Wort "Rasen" nicht. Zusätzliches Thema wären noch die senkrechten Linien oben links.

von Stefan Kottwitz » So 29. Sep 2013, 13:03

Hallo Johannes,

färbe auch die vorige Zelle ein und verwende \cline statt \hline an der Stelle vor \multirow:
\begin{tabular}{|c|c|c|c|}
\cline{3-4}
{}&{}&\multicolumn{2}{|>{\columncolor[gray]{0.5}}c|} {\textcolor {white}{\textbf {Rasen}}}\\
\cline{3-4}
{}&{}& \cellcolor[gray]{0.9}{hoher Preis} & \cellcolor[gray]{0.9}{niedriger Preis}\\
\hline
\cellcolor[gray]{0.5}& \cellcolor[gray]{0.9}{hoher Preis} & 4;4 & 1;6 \\
\cline{1-4}
\multirow{-2}{*}{\cellcolor[gray]{0.5}\textcolor {white}{\textbf {Wiese}}}  & \cellcolor[gray]{0.9}{niedriger Preis} & 6;1 & 3;3\\
\hline
\end{tabular}
Übrigens werden Tabellen auch sehr viel hier diskutiert: Thema Tabellen mit LaTeX.

Stefan

von johannes_ » So 29. Sep 2013, 09:37

Hallo zusammen,

ich habe ein ähnliches Problem wie AspirinJunkie, jedoch hilft es bei mir nicht, \multirow nach unten zu setzen. Das Phänomen kehrt sich nur um.

Hier das Beispiel:
\documentclass[fontsize=12pt, paper=a4]{scrreprt}
\usepackage[T1]{fontenc} 
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{multirow}
\usepackage{multicol}
\usepackage{colortbl}
\usepackage[babel,german=guillemets]{csquotes}

\begin{document}

\begin{tabular}{|c|c|c|c|}
\cline{3-4}
{}&{}&\multicolumn{2}{|>{\columncolor[gray]{0.5}}c|} {\textcolor {white}{\textbf {Rasen}}}\\
\cline{3-4}
{}&{}& \cellcolor[gray]{0.9}{hoher Preis} & \cellcolor[gray]{0.9}{niedriger Preis}\\
\hline
& \cellcolor[gray]{0.9}{hoher Preis} & 4;4 & 1;6 \\
\hline
\multirow{-2}{*}{\cellcolor[gray]{0.5}\textcolor {white}{\textbf {Wiese}}}  & \cellcolor[gray]{0.9}{niedriger Preis} & 6;1 & 3;3\\
\hline
\end{tabular}

\end{document}

Ich hoffe, es hat jemand eine Idee.

Ein weiteres Problem in dem Beispiel, das ich noch nicht gelöst habe, sind die senkrechten Linien in vor der ersten und der zweiten Spalte, jeweils in der ersten und zweiten Zeile. Diese Linien möchte ich nicht darstellen.

Vielen Dank.

MfG Johannes

von AspirinJunkie » Do 23. Jun 2011, 11:55

Ok sorry für den Doppelpost aber ich hab soeben selbst die Lösung gefunden.
Die multirow muss in der letzten Spalte beginnen und mit "-" entsprechend nach oben versetzt werden.

Falls also mal einer das selbe Problem hat:
\documentclass{scrartcl}

\usepackage{colortbl}	
\usepackage{multirow}

\begin{document}

\begin{tabular}{|>{\columncolor[rgb]{0.95,0.95,0.95}}m{0.1\textwidth}|l|}
	\hline
	Test A & BlaBla 1 \\
	\hline
							      	& BlaBla 2 \\
	\multirow{-2}{*}{Test B}	& BlaBla 3 \\
	\hline 
						 	     	& BlaBla 4 \\
			 				     	& BlaBla 5 \\
	\multirow{-3}{*}{Test C}	& BlaBla 6 \\
	\hline
\end{tabular}
		
\end{document}

multirow und colortbl vs. vertikale Zellenzentrierung

von AspirinJunkie » Do 23. Jun 2011, 11:44

Hallo

Folgendes Problem besteht bei mir:
Ich möchte die erste Spalte einer Tabelle mit einer Farbe belegen.
Gleichzeitig handelt es sich aber um eine MultiRow-Umgebung bei der die 1. einzelne Spalte vertikal zentriert sein soll.
Das Problem jedoch: alles unterhalb der 1. Zeile der 1. Zelle wird abgeschnitten.

Ich denke am deutlichsten wird dies durch folgendes Minimalbeispiel:
\documentclass{scrartcl}

\usepackage{colortbl}	
\usepackage{multirow}

\begin{document}

\begin{tabular}{|>{\columncolor[rgb]{0.95,0.95,0.95}}m{0.1\textwidth}|l|}
	\hline
	Test A & BlaBla 1 \\
	\hline
	\multirow{2}{*}{Test B} & BlaBla 2 \\
		 				     	& BlaBla 3 \\
	\hline 
	\multirow{3}{*}{Test C} & BlaBla 4 \\
			 			     	& BlaBla 5 \\
			 			     	& BlaBla 6 \\
	\hline
\end{tabular}
		
\end{document}[/quote]
Wie könnte ich dies am einfachsten beheben?

Besten Dank im Voraus

Nach oben