我正在使用以下代码。在 p{6cm} 列中,单元格文本中没有自动换行符。相反,太长的文本会覆盖正确的单元格。我做错了什么?
\begin{tabular}{p{6cm}lrc}
\rowcolor{heading}\bf{Projektphase} & \bf{Beteiligter Mitarbeiter} & \bf{Dauer} & \bf{Zeitraum} \\
\multirow{2}{*}{Planung und Entwurf} & Ordnas & 5 \mbox{h} & \multirow{2}{*}{Zeitraum} \\
& Christoph Frohnhöfer & 2 \mbox{h} & \\
\rowcolor{odd}& Sandro Roch & 20 \mbox{h} & \\
\rowcolor{odd}\multirow{-2}{*}{Implementieren der Datenermittlung und -aufbereitung} & Muria & 2 \mbox{h} & \multirow{-2}{*}{Zeitraum}\\
\multirow{2}{*}{Implementieren der Benutzeroberfläche} & Franz & 35 \mbox{h} & \multirow{2}{*}{Zeitraum} \\
& Maria & 3 \mbox{h} & \\
\rowcolor{odd}Entwicklertest & Markus & 2 \mbox{h} & Zeitraum \\
Qualitätssicherung & QS-Mitarbeiter & 1 \mbox{h} & Zeitraum \\
\rowcolor{odd}& Peter & 1 \mbox{h} & \\
\rowcolor{odd}\multirow{-2}{*}{Abnahme durch Projektverantwortlichen} & Moritz & 1 \mbox{h} & \multirow{-2}{*}{Zeitraum} \\
Projektdokumentation & Fritz & 7 \mbox{h} & Zeitraum \\
\hline
\hline
\rowcolor{heading}\bf{Summe} & & \bf{79 \mbox{h}} &
\end{tabular}
谢谢你的回答!
答案1
使用该*
选项,参数multirow
被放在一个普通的 (h) 框中,因此不会出现换行符。如果指定了具体宽度,则允许换行。由于您已经使用了p
具有给定宽度的列,因此您可以对 s 使用相同的宽度multirow
:
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage{multirow}
\usepackage{colortbl}
\begin{document}
\begin{center}
\begin{tabular}{p{6cm}lrc}
\rowcolor{red}\textbf{Projektphase} & \textbf{Beteiligter Mit.} & \textbf{Dauer} & \textbf{Zeitraum} \\
\multirow{2}{6cm}{Planung und Entwurf} & Ordnas & 5 \mbox{h} & \multirow{2}{*}{Zeitraum} \\
& Christoph Frohnhöfer & 2 \mbox{h} & \\
\rowcolor{green}& Sandro Roch & 20 \mbox{h} & \\
\rowcolor{green}\multirow{-2}{6cm}{Implementieren der Datenermittlung und -aufbereitung} & Muria & 2 \mbox{h} & \multirow{-2}{*}{Zeitraum}\\
\multirow{2}{6cm}{Implementieren der Benutzeroberfläche} & Franz & 35 \mbox{h} & \multirow{2}{*}{Zeitraum} \\
& Maria & 3 \mbox{h} & \\
\rowcolor{green}Entwicklertest & Markus & 2 \mbox{h} & Zeitraum \\
Qualitätssicherung & QS-Mitarbeiter & 1 \mbox{h} & Zeitraum \\
\rowcolor{green}& Peter & 1 \mbox{h} & \\
\rowcolor{green}\multirow{-2}{6cm}{Abnahme durch Projektverantwortlichen} & Moritz & 1 \mbox{h} & \multirow{-2}{*}{Zeitraum} \\
Projektdokumentation & Fritz & 7 \mbox{h} & Zeitraum \\
\hline
\hline
\rowcolor{red}\textbf{Summe} & & \textbf{79 \mbox{h}} &
\end{tabular}
\end{center}
\end{document}
答案2
您必须通过指定其宽度将 \multirow 设置为。我使用和包\parbox{6cm}
添加了一些建议来改进您的表格。makecell
siunitx
\documentclass{article}%[preview]{standalone}
\usepackage[utf8]{inputenc}
\usepackage[x11names]{xcolor}
\usepackage{colortbl}
\colorlet{heading}{Thistle2!50}
\colorlet{odd}{LightSteelBlue2}
\usepackage{array, booktabs, multirow}
\usepackage{makecell}
\renewcommand\theadfont{\bfseries}
\renewcommand\theadalign{lc}
\renewcommand\cellset{\bfseries}
\usepackage{siunitx}
%
\begin{document}
\begin{tabular}{p{6cm}lS[table-format = 2.0] c}
\rowcolor{heading}\thead{\raggedleft Projektphase} & \thead{Beteiligter Mitarbeiter} & {\makecell{Dauer\\ \mdseries (h)}} & \thead{Zeitraum} \\
\multirow{2}{*}{Planung und Entwurf} & Ordnas & 5 & \multirow{2}{*}{Zeitraum} \\
& Christoph Frohnhöfer & 2 & \\
\rowcolor{odd}& Sandro Roch & 20 & \\
\rowcolor{odd}\multirow{-2}{6cm}{Implementieren der Datenermittlung und -aufbereitung} & Muria & 2 & \multirow{-2}{*}{Zeitraum}\\
\multirow{2}{*}{Implementieren der Benutzeroberfläche} & Franz & 35 & \multirow{2}{*}{Zeitraum} \\
& Maria & 3 & \\
\rowcolor{odd}Entwicklertest & Markus & 2 & Zeitraum \\
Qualitätssicherung & QS-Mitarbeiter & 1 & Zeitraum \\
\rowcolor{odd}& Peter & 1 & \\
\rowcolor{odd}\multirow{-2}{*}{Abnahme durch Projektverantwortlichen} & Moritz & 1 & \multirow{-2}{*}{Zeitraum} \\
Projektdokumentation & Fritz & 7 & Zeitraum \\
\hline
\hline
\rowcolor{heading}\thead{Summe} & & \bfseries 79 &
\end{tabular}
\end{document}