Zellen zeilenweise verbinden

Tabellen und Grafiken erstellen und anordnen


daweed90
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 70
Registriert: Di 1. Jul 2014, 21:28

Zellen zeilenweise verbinden

Beitrag von daweed90 »

Hallo Leute,

unten seht ihr ein Mini-Beispiel einer Tabelle. Ich würde gerne die Zellen E1 und E2 miteinander verbinden. Weiß jemand wie der Befehl dazu aussieht?
\documentclass{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[table]{xcolor}
\definecolor{OliveGreen}{rgb}{0,0.6,0}

\begin{document}


\begin{table}[H]
\center
\begin{tabular}{>{\centering}m{3cm}|>{\centering}m{3cm}|>{\centering}m{3cm}}
		& Randbedingung & Wert \tabularnewline
\hline
E1 & R1 & W1 \tabularnewline
E2 & R2 & W2 \tabularnewline
E3 & R3 & W3 \tabularnewline
E4 & R4 & W4 \tabularnewline
E5 & R5 & W5 \tabularnewline
E6 & R6 & W6 \tabularnewline
E7 & R7 & W7 \tabularnewline
E8 & R8 & W8 \tabularnewline
\end{tabular}
\end{table}
\end{document} 
Danke bereits im Voraus.

Viele Grüße

Besserwisser

Beitrag von Besserwisser »

Inwiefern verbinden? Suchst Du eventuell multirow oder eine Untertabelle?

daweed90
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 70
Registriert: Di 1. Jul 2014, 21:28

Beitrag von daweed90 »

Mit multirow kann man ja nur Zellen zeilenweise verbinden. Ich möchte aber spaltenweise verbinden. Quasi, dass aus der Zelle E1 und E2 eine Zelle machen und die Zellen R1 und R2 bzw. W1 und W2 sollen weiterhin so bleiben wie sie sind. Habe ich mein Problem verständlich erklärt?
:shock:

Viele Grüße

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Multirow verbindet Zellen von Spalten, multicolumn verbindet Zellen in Zeilen.
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

Besserwisser

Beitrag von Besserwisser »

E1 und E2 stehen untereinander, also in derselben Spalte. Also kann man sie nur innerhalb der Spalte und daher mit dem empfohlenen multirow-Paket, dessen Anleitung du natürlich hättest lesen sollen (u. a. dafür hatte ich den Link gesetzt), zu einer Zelle verbinden.

E1 und R1 stehen hintereinander, also in derselben Zeile. Also kann man sie nur innerhalb der Zeile und daher ganz einfach mit \multicolumn aus dem LaTeX-Kern zu einer Zelle verbinden.

Also hast du entweder nicht richtig erklärt, was du willst, oder du arbeitest zu hektisch, statt die Vorschläge gründlich zu prüfen.

BTW: Deine Tabelle hat zu viele vertikale Linien. Die solltest du besser alle weglassen (siehe beispielsweise die Anleitung zum Paket booktabs oder die Folien zum Tabellenvortrag, die in »Wichtige Netzdokumente« verlinkt sind).

daweed90
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 70
Registriert: Di 1. Jul 2014, 21:28

Beitrag von daweed90 »

Du hattest natürlich Recht Besserwisser, ich habe multirow und multicolumn verwechselt. Ich habe auch bereits versucht den Befehl in meinen Code einzubauen, aber ich bekomme immer nur Fehlermeldungen.
Unten seht ihr meinen Code, der leider noch fehlerhaft ist.
\documentclass{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[table]{xcolor}
\definecolor{OliveGreen}{rgb}{0,0.6,0}

\begin{document}


\begin{table}[H]
\center
\begin{tabular}{>{\centering}m{3cm}|>{\centering}m{3cm}|>{\centering}m{3cm}}
		& Randbedingung & Wert \tabularnewline
\hline
\multirow{2}*{E1} & R1 & W1 \tabularnewline
     & R2 & W2 \tabularnewline
E3 & R3 & W3 \tabularnewline
E4 & R4 & W4 \tabularnewline
E5 & R5 & W5 \tabularnewline
E6 & R6 & W6 \tabularnewline
E7 & R7 & W7 \tabularnewline
E8 & R8 & W8 \tabularnewline
\end{tabular}
\end{table}
\end{document} 
Könnt ihr mir sagen, wie ich multirow richtig verwende? Als erstes Argument muss man ja eingeben, wie viele Zellen verbunden werden sollen. Muss außer dem Inhalt noch ein Argument hinzugefügt werden?.

Viele Grüße

Besserwisser

Beitrag von Besserwisser »

Hilfreich wäre mit Sicherheit, wenn du das zugehörige Paket auch laden würdest, also ein
\usepackage{multirow}
in die Präambel einfügen würdest …

Grundsätzlich lädt LaTeX Pakete nicht einfach deshalb, weil man irgendwelche Befehle daraus verwendet, sondern nur, wenn man ihm sagt, dass man sie geladen haben will. Eventuell wäre es gut, wenn du einmal eine ausführliche LaTeX-Einführung lesen würdest.

daweed90
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 70
Registriert: Di 1. Jul 2014, 21:28

Beitrag von daweed90 »

Ok funktioniert, ich dachte multirow kann man einfach so verwenden. Danke dafür :)
Allerdings wird bei längerem Text nicht umgebrochen, sondern über den Zellenrand hinaus geschrieben. Habe gelesen, dass das mit \textwidth funktioniert. Aber wahrscheinlich habe ich mal wieder ein Packet vergessen oder den Befehl an der falschen Stelle eingefügt:
\documentclass{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[table]{xcolor}
\definecolor{OliveGreen}{rgb}{0,0.6,0}
\usepackage{multirow}

\begin{document}


\begin{table}[H]
\center
\begin{tabular}{>{\centering}m{3cm\textwidth}}|>{\centering}m{3cm}|>{\centering}m{3cm}}
		& Randbedingung & Wert \tabularnewline
\hline
\multirow{2}*{E1} & R1 & W1 \tabularnewline
   & R2 & W2 \tabularnewline
E3 & R3 & W3 \tabularnewline
E4 & R4 & W4 \tabularnewline
E5 & R5 & W5 \tabularnewline
E6 & R6 & W6 \tabularnewline
E7 & R7 & W7 \tabularnewline
E8 & R8 & W8 \tabularnewline
\end{tabular}
\end{table}
\end{document}
Benötigt man vielleicht das tabularx-Packet? Aber selbst mit dem Packet und wenn ich aus \begin{tabuar} bzw. \end{tabular} \begin{tabularx} bzw. \end{tabularx} mache, funktioniert es nicht :/

Viele Grüße

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Ganz ruhig, was hast du denn vor? Dein Beispiel zeigt keinen langen Text, die Breite der ersten Spalte gibst du an mit 3cm mal Textbreite Das kann nicht klappen!
\documentclass{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{multirow}
\usepackage{array}
\usepackage{booktabs}
\newcolumntype{M}{>{\centering\arraybackslash}m{3cm}}
\begin{document}
\begin{tabular}{MMM}
	\toprule
      & Randbedingung & Wert \tabularnewline
      \midrule
\multirow{2}{2.9cm}{langer Text der Breiter als die Zelle ist} & R1 & W1 \tabularnewline
   & R2 & W2 \tabularnewline
E3 & R3 & W3 \tabularnewline
E4 & R4 & W4 \tabularnewline
E5 & R5 & W5 \tabularnewline
E6 & R6 & W6 \tabularnewline
E7 & R7 & W7 \tabularnewline
E8 & R8 & W8 \tabularnewline
\bottomrule
\end{tabular}
\end{document}
\documentclass{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{multirow}
\usepackage{array}
\newcolumntype{M}{>{\centering\arraybackslash}m{3cm}}
\begin{document}
\begin{tabular}{M|M|M}
      & Randbedingung & Wert \tabularnewline
\hline
\multirow{2}{2.9cm}{langer Text der Breiter als die Zelle ist} & R1 & W1 \tabularnewline
   & R2 & W2 \tabularnewline
E3 & R3 & W3 \tabularnewline
E4 & R4 & W4 \tabularnewline
E5 & R5 & W5 \tabularnewline
E6 & R6 & W6 \tabularnewline
E7 & R7 & W7 \tabularnewline
E8 & R8 & W8 \tabularnewline
\end{tabular}
\end{document}
Außerdem solltest du beachten, dass der Befehl \centering lautet.
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

daweed90
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 70
Registriert: Di 1. Jul 2014, 21:28

Beitrag von daweed90 »

Ok ich habe dazu noch eine Frage:
Wieso wird der Text in der verbundenen Zelle nicht zentriert dargestellt, obwohl bei \newcolumntype mit centering gearbeitet wurde? Gibt es eine Möglichkeit den Text zu zentrieren?

Viele Grüße

Antworten