
我想創建這個表:
其代碼位於第二個表中。 (感謝伯納德!)不幸的是,由於這兩個表,我遇到了兩個錯誤。
第一個是:出了點問題-可能缺少\item。 \end{表格x}
第二個是:錯位\省略。 \end{表格x}
代碼是:
\documentclass[a4paper, ngerman]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage[showframe]{geometry}
\usepackage[table, svgnames]{xcolor}
\usepackage{ragged2e}
\usepackage{tabularx, multirow, caption, makecell, hhline}
\usepackage{graphicx}
\usepackage{enumitem}
\usepackage{ltablex}
\begin{document}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
TABLE 1
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{table}[!htbp]
\centering
\setlength\tabcolsep{3pt}
\setlist[itemize]{wide=0pt, labelsep=2pt, leftmargin=*, nosep, before
=\mbox{}\vspace*{-.7\baselineskip}, after=\vspace*{-.8\baselineskip}}
\caption{\label{tab:Gestaltungsbereiche}Gestaltungsbereiche}
%
\begin{tabularx}{\textwidth}{|c|*{3}{>{\RaggedRight}X|}}
\hhline{~|---|}
\multicolumn{1}{r|}{} & \multicolumn{3}{c|}
{\cellcolor{Gainsboro}Gestaltungsbereiche} \\
\hhline{~|---|}
\rowcolor{Gainsboro} \multicolumn{1}{r|}{\cellcolor{white}} &%
\multicolumn{1}{>{\centering}X}{\centering Betriebsmittel\newline \centering
(B)}
\makecell{Betriebsmittel\\ (B)} & \makecell{Organisation\\ (O)} &
\makecell{Raum- und \\Gebäudetechnik \\ (R)}\\
\hline
\multirow{11}{*}[-1ex]{\rotatebox{90}{Fabrikobjekte}}
& \begin{itemize}
\item Fertigungseinrichtungen
\item Montageeinrichtungen
\item Logistikeinrichtungen
\item Qualitätseinrichtungen
\item Informations- und
\newline Kommunikations\-einrichtungen
\item Ver- und Entsorgungs\-einrichtungen
\item Übergeordnete Systeme
\item Mobiliar
\end{itemize} %
& \begin{itemize}
\item Unternehmensstrategie
\item Logistikkonzept
\item Prozessgestaltung
\item Aufbauorganisations\-gestaltung
\item Arbeitsorganisation
\item Qualitätssicherungs\-konzept
\end{itemize} %
& \begin{itemize}
\item Grundstück
\item Bau\-konstruktion
\item Technische Anlagen
\item Außenanlagen
\item Ausstattung
\item Konzepte
\end{itemize} \\%
\hline
\end{tabularx}%
\end{table}%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
TABLE 2
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newpage
\keepXColumns
\setlength{\extrarowheight}{3pt}
\begin{tabularx}{\textwidth}{|c|*{2}{>{\RaggedRight}X|}p{9cm}|}
\caption{Betriebsmittel: Fabrikobjekte}
\label{tab:addlabel}%\\
\hhline{~|---|}
\rowcolor{Gainsboro} \multicolumn{1}{r|}{\cellcolor{white}}&
\multicolumn{1}{>{\centering\columncolor{Gainsboro}[\tabcolsep][1em]}X}
{\centering Fabrikobjekte 1.Ordnung}&
\multicolumn{2}{c|}{Fabrikobjekte 2.Ordnung}
\\
\hhline{----}
\endfirsthead
\hhline{~|---|}
\rowcolor{Gainsboro} \multicolumn{1}{r|}{\cellcolor{white}}&
\multicolumn{1}{>{\centering\columncolor{Gainsboro}[\tabcolsep][1em]}X}
{\centering Fabrikobjekte 1.Ordnung}&
\multicolumn{2}{c|}{Fabrikobjekte 2.Ordnung}
\\
\hhline{----}
\endhead
\multirow{45}{*}[-1ex]{\rotatebox{90}{Gestaltungsfeld: Betriebsmittel}}
%%%
& \multirow{11}{*}{Fertigungseinrichtung} & \multirow{5}{*}{Maschine} &
Gestell \\
& & & Antriebe\\
& & & Kinematisches System \\
& & & Steuerungs-/ Mess-/Regel- \&
Diagnosesysteme \\
& & & Hilfssysteme / Peripherie \\[0.4ex]
\cline{3-4}
& &
\multirow{3}{*}{Vorrichtung / Hilfmittel} &
Vorrichtungs- \& Spannsysteme \\
& & & Werkstückflusssystem \\
& & & Steuerung \\[0.4ex]
\cline{3-4}& & Werkzeuge & \\[0.4ex]
\cline{2-4}& \multirow{9}{*}{Montageeinrichtungen} & {\multirow{5}{*}
{Montagegrundplatz}} & {Gestell} \\
& & & Antriebe\\
& & & Kinematisches System \\
& & & Steuerungs-/ Mess-/Regel- \& Diagnosesysteme \\
& & & Hilfssysteme / Peripherie \\[0.4ex]
\cline{3-4}
& & \multirow{3}{*}{Vorrichtung / Hilfmittel} & {Vorrichtungs- \&
Spannsysteme} \\
& & &{Werkstückflusssystem} \\
& & & {Steuerung} \\[0.4ex]
\cline{3-4}& & {Werkzeuge} & \\[0.4ex]
\cline{2-4}& \multirow{25}{*}{Logistikeinrichtungen} & {\multirow{6}{*}
{Transporteinrichtungen}} & {Gestell} \\
& & & Transportvorrichtung\\
& & & Antriebe\\
& & & Kinematisches System \\
& & & Steuerung \\
& & & Hilfssysteme / Peripherie \\[0.4ex]
\cline{3-4}
& & {\multirow{6}{*}{Handhabungseinrichtungen}} & {Gestell} \\
& & & Handhabungsvorrichtung\\
& & & Antriebe\\
& & & Kinematisches System \\
& & & Steuerung \\
& & & Hilfssysteme / Peripherie \\[0.4ex]
\cline{3-4}
\end{tabularx}%
\end{document}
我很欣賞每一則評論。
我目前對第二個表的結果是這樣的:
答案1
\centering
a 不需要longtable
:預設情況下它會自動居中。您不必在 longtable 中插入 tabularx 環境來表示它會擴充頁面。您只需載入一個新增了longtable
to的功能(和語法)的套件tabularx
。我建議使用ltablex
.
文法是 longtable 的語法:你把 \caption裡面tabularx,在聲明之前first table head
(這些聲明以 `\endfirsthead 結尾)。
然後我建議添加列標題以及以下標題的標題聲明(以 結尾\endhead
)。
我刪除了\multicolumn{1}{l|}
最後一列中的所有內容,這可以防止斷行並產生溢出到頁邊距的內容。
所以這是我建議的程式碼:
\documentclass[a4paper, ngerman]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage[showframe]{geometry}
\usepackage[table, svgnames]{xcolor}
\usepackage{ragged2e}
\usepackage{multirow, caption, makecell, hhline}
\usepackage{graphicx}
\usepackage{ltablex}
\keepXColumns
\begin{document}
%\begin{longtable}
%\centering
%\caption{Betriebsmittel: Fabrikobjekte}
\setlength{\extrarowheight}{3pt}
\begin{tabularx}{\textwidth}{|c|*{3}{>{\RaggedRight}X|}}
\caption{Betriebsmittel: Fabrikobjekte}
\label{tab:addlabel}%\\
\hhline{~|---|}
\rowcolor{Gainsboro} \multicolumn{1}{r|}{\cellcolor{white}}&
\multicolumn{1}{>{\centering\columncolor{Gainsboro}[\tabcolsep][1em]}X}{\centering Fabrikobjekte 1.Ordnung}&
\multicolumn{2}{c|}{Fabrikobjekte 2.Ordnung}
\\
\hhline{----}
\endfirsthead
\hhline{~|---|}
\rowcolor{Gainsboro} \multicolumn{1}{r|}{\cellcolor{white}}&
\multicolumn{1}{>{\centering\columncolor{Gainsboro}[\tabcolsep][1em]}X}{\centering Fabrikobjekte 1.Ordnung}&
\multicolumn{2}{c|}{Fabrikobjekte 2.Ordnung}
\\
\hhline{----}
\endhead
\multirow{12}{*}[-1ex]{\rotatebox{90}{Gestaltungsfeld: Betriebsmittel}}
%%%
& \multirow{11}{*}{Fertigungseinrichtung} & \multirow{5}{*}{Maschine} &
Gestell \\
& & & Antriebe\\
& & & Kinematisches System \\
& & & Steuerungs-/ Mess-/Regel- \&
Diagnosesysteme \\
& & & Hilfssysteme / Peripherie \\[0.4ex]
\cline{3-4}
& &
\multirow{3}[2]{*}{Vorrichtung / Hilfmittel} &
Vorrichtungs- \& Spannsysteme \\
& & & Werkstückflusssystem \\
& & & Steuerung \\[0.4ex]
\cline{3-4}& & Werkzeuge & \\[0.4ex]
\cline{2-4}\\
%%%
\end{tabularx}%
\end{document}
添加:
這段程式碼可以很好地編譯三個表。請注意,第三個表是取得第二個表的較短代碼。我已經改變了使用的數字multirow
:你必須採取總數線在多行單元格必須分佈的行中,而不是行數列,並可能為內容的垂直放置添加修正性可選參數。
另一方面,載入ltablex
使所有tabularx
環境成為longtable
.這裡它們居中,不浮動(不要將它們嵌套在 中table
)並且必須插入標題裡面環境。
\documentclass[a4paper, ngerman]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{geometry}
\usepackage[table, svgnames]{xcolor}
\usepackage{ragged2e}
\usepackage{multirow, caption, makecell, hhline}
\usepackage{ltablex}%{tabularx}%
\usepackage{graphicx}
\usepackage{enumitem}
\newcommand\mypar{ \par\hangindent=1.5em\hangafter=1}
\begin{document}
\sffamily\captionsetup{font=sf}
\setlength\tabcolsep{3pt}
\setlist[itemize]{wide=0pt, labelsep=2pt, leftmargin=*, nosep, before
=\mbox{}\vspace*{-.7\baselineskip}, after=\vspace*{-.8\baselineskip}}
\keepXColumns
%
\begin{tabularx}{\textwidth}{|c|*{3}{>{\RaggedRight\arraybackslash}X|}}
\caption{\label{tab:Gestaltungsbereiche}Gestaltungsbereiche} \\
\hhline{~|---|}
\multicolumn{1}{r|}{} & \multicolumn{3}{c|}
{\cellcolor{Gainsboro}Gestaltungsbereiche} \\
\hhline{~|---|}
\rowcolor{Gainsboro} \multicolumn{1}{r|}{\cellcolor{white}} & %
\makecell{Betriebsmittel \\ (B)} & \makecell{Organisation\\ (O)} &
\makecell{Raum- und \\Gebäudetechnik \\ (R)}\\
\hline
\endfirsthead
\multirow{11}{*}[-1ex]{\,\rotatebox{90}{Fabrikobjekte}\,}
&
\begin{itemize}
\item Fertigungseinrichtungen
\item Montageeinrichtungen
\item Logistikeinrichtungen
\item Qualitätseinrichtungen
\item Informations- und
Kommunikations\-einrichtungen
\item Ver- und Entsorgungs\-einrichtungen
\item Übergeordnete Systeme
\item Mobiliar
\end{itemize} %
& \begin{itemize}
\item Unternehmensstrategie
\item Logistikkonzept
\item Prozessgestaltung
\item Aufbauorganisations\-gestaltung
\item Arbeitsorganisation
\item Qualitätssicherungs\-konzept
\end{itemize} %
& \begin{itemize}
\item Grundstück
\item Bau\-konstruktion
\item Technische Anlagen
\item Außenanlagen
\item Ausstattung
\item Konzepte
\end{itemize}
\\%
\hline
\end{tabularx}%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% TABLE 2
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newpage
\setlength{\extrarowheight}{2pt}
\begin{tabularx}{\textwidth}{|c|*{2}{>{\RaggedRight}X|}>{\RaggedRight}p{4.8cm}|}
\caption{Betriebsmittel: Fabrikobjekte}
\label{tab:addlabel} \\
\hhline{~|---|}
\multicolumn{1}{r|}{\cellcolor{white}} &
\cellcolor{Gainsboro}\centering Fabrikobjekte 1.Ordnung &
\multicolumn{2}{c|}{\cellcolor{Gainsboro}Fabrikobjekte 2.Ordnung}
\\
\hhline{----}
\endfirsthead
\hhline{~|---|}
\rowcolor{Gainsboro} \multicolumn{1}{r|}{\cellcolor{white}} &
\multicolumn{1}{>{\centering\columncolor{Gainsboro}[\tabcolsep][1em]}X}
{\centering Fabrikobjekte 1.Ordnung} &
\multicolumn{2}{c|}{Fabrikobjekte 2.Ordnung}
\\
\hhline{----}
\endhead
\hhline{----}
\endfoot
\multirow{32}{*}{\,\rotatebox{90}{Gestaltungsfeld: Betriebsmittel}\,}
%
& \multirow{11}{=}{Fertigungseinrichtung} & \multirow{6}{*}{Maschine} &
Gestell \\
& & & Antriebe \\
& & & Kinematisches System \\
& & & Steuerungs-/ Mess-/Regel- \& \par\quad Diagnosesysteme \\
& & & Hilfssysteme / Peripherie \\[0.4ex]
\cline{3-4}
& &
\multirow{3}{=}{Vorrichtung / Hilfmittel} &
Vorrichtungs- \& Spannsysteme \\
& & & Werkstückflusssystem \\
& & & Steuerung \\[0.4ex]
\cline{3-4} & & Werkzeuge & \\[0.4ex]
\cline{2-4} & \multirow{11}{=}[-2pt]{Montageeinrichtungen} &
\multirow{6}{=}{Montagegrundplatz} & Gestell \\
& & & Antriebe \\
& & & Kinematisches System \\
& & & Steuerungs-/ Mess-/Regel- \&\par\quad Diagnosesysteme \\
& & & Hilfssysteme / Peripherie \\[0.4ex]
\cline{3-4}
& & \multirow{3}{=}{Vorrichtung / Hilfmittel} & {Vorrichtungs- \& Spannsysteme} \\
& & & Werkstückflusssystem \\
& & & Steuerung \\[0.4ex]
\cline{3-4} & & {Werkzeuge} & \\[0.4ex]
\cline{2-4} & \multirow{12}{=}{Logistikeinrichtungen} &
\multirow{6}{=}{Transporteinrichtungen} & Gestell \\
& & & Transportvorrichtung \\
& & & Antriebe \\
& & & Kinematisches System \\
& & & Steuerung \\
& & & Hilfssysteme / Peripherie \\[0.4ex]
\cline{3-4}
& & \multirow{6}{=}{Handhabungseinrichtungen} & Gestell \\
& & & Handhabungsvorrichtung \\
& & & Antriebe \\
& & & Kinematisches System \\
& & & Steuerung \\
& & & Hilfssysteme / Peripherie \\[0.4ex]
\end{tabularx}%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% TABLE 2 bis
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newpage
\setlength{\extrarowheight}{3pt}
\begin{tabularx}{\textwidth}{|c|*{2}{>{\RaggedRight}X|}>{\RaggedRight\everypar{\hangindent=1.5em\hangafter=1}}p{4.8cm}|}
\caption{Betriebsmittel: Fabrikobjekte}
\label{tab:addlabel} \\
\hhline{~|---|}
\multicolumn{1}{r|}{\cellcolor{white}} &
\cellcolor{Gainsboro}\centering Fabrikobjekte 1.Ordnung &
\multicolumn{2}{c|}{\cellcolor{Gainsboro}Fabrikobjekte 2.Ordnung}
\\
\hhline{----}
\endfirsthead
\hhline{~|---|}
\rowcolor{Gainsboro} \multicolumn{1}{r|}{\cellcolor{white}} &
\multicolumn{1}{>{\centering\columncolor{Gainsboro}[\tabcolsep][1em]}X}
{\centering Fabrikobjekte 1.Ordnung} &
\multicolumn{2}{c|}{Fabrikobjekte 2.Ordnung}
\\
\hhline{----}
\endhead
\hhline{----}
\endfoot
\multirow{27}{*}{\,\rotatebox{90}{Gestaltungsfeld: Betriebsmittel}\,}
%
& \multirow{11}{=}{Fertigungseinrichtung} & \multirow{6}{=}{Maschine}
& Gestell \par Antriebe \par Kinematisches System \par Steuerungs-/ Mess-/Regel- \& Diagnosesysteme \par Hilfssysteme / Peripherie \\[0.4ex]
\cline{3-4}
& & \multirow{3}{=}{Vorrichtung / Hilfmittel} &
Vorrichtungs- \& Spannsysteme \par Werkstückflusssystem \par Steuerung \\[0.4ex]
\cline{3-4} & & Werkzeuge & \\[0.4ex]
\cline{2-4} & \multirow{11}{=}[-2pt]{Montageeinrichtungen} & \multirow{6}{=}{Montagegrundplatz} %
& Gestell \par Antriebe \par Kinematisches System \par Steuerungs-/ Mess-/Regel- \& Diagnosesysteme \par Hilfssysteme / Peripherie \\[0.4ex]
\cline{3-4}
& & \multirow{3}{=}{Vorrichtung / Hilfmittel} &
Vorrichtungs- \& Spannsysteme \par Werkstückflusssystem \par Steuerung \\[0.4ex]
\cline{3-4} & & {Werkzeuge} & \\[0.4ex]
\cline{2-4} & \multirow{12}{=}{Logistikeinrichtungen} & \multirow{6}{*}{Transporteinrichtungen}
& Gestell \par Transportvorrichtung \par Antriebe \par Kinematisches System \par Steuerung \par Hilfssysteme / Peripherie \\[0.4ex]
\cline{3-4}
& & \multirow{6}{=}{Handhabungseinrichtungen}
& Gestell \par Handhabungsvorrichtung \par Antriebe \par Kinematisches System \par Steuerung \par Hilfssysteme / Peripherie \\[0.4ex]
\end{tabularx}%
\end{document}
答案2
如果您收到 TeX 錯誤,您根本不應該真正查看排版結果。
這裡的錯誤是
! Package array Error: Illegal pream-token (\centering): `c' used.
因為在可選參數之後,第一個標記\centering
就像大多數數組環境一樣,longtable
正在尋找列規範。
可選參數只能是[c]
,[l]
或[r]
so[!htbp]
被忽略(由於大多數歷史原因沒有給出錯誤),所以我刪除了該可選參數。
所以改變為
\begin{longtable}{ccc}
產生的輸出沒有錯誤,但標題位於 的左側,tabularx
因為您省略了\\
來結束該longtable
行。
我在這一點上停下來,因為根本不清楚你想要什麼。目前,整個longtable
表格在由嵌套組成的單列中只有一個單元格,如果這是您根本不需要tabularx
的真實情況,並且可以只 在裡面有一個?longtable
tabularx
table
\documentclass[a4paper, ngerman]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage[showframe]{geometry}
\usepackage[table, svgnames]{xcolor}
\usepackage{ragged2e}
\usepackage{tabularx, multirow, caption, makecell, hhline}
\usepackage{graphicx}
\usepackage{longtable}
\begin{document}
\begin{longtable}{ccc}
\caption{Betriebsmittel: Fabrikobjekte}\\
\begin{tabularx}{\textwidth}{|c|*{3}{>{\RaggedRight}X|}}
\hhline{~|---|}
\rowcolor{Gainsboro} \multicolumn{1}{r|}{\cellcolor{white}} &
\multicolumn{1}{>{\centering}X}{\centering Fabrikobjekte 1.Ordnung}&
\multicolumn{2}{>{\centering}X}{\centering Fabrikobjekte 2.Ordnung}
\\
\hline
\multirow{11}{*}[-1ex]{\rotatebox{90}{Gestaltungsfeld: Betriebsmittel}}
%%%
& \multirow{9}{*}{Fertigungseinrichtung} & \multirow{5}{*}{Maschine} &
\multicolumn{1}{l|}{Gestell} \\
& & & \multicolumn{1}{l|}{Antriebe} \\
& & & \multicolumn{1}{l|}{Kinematisches System} \\
& & & \multicolumn{1}{l|}{Steuerungs-/ Mess-/Regel- \&
Diagnosesysteme} \\
& & & \multicolumn{1}{l|}{Hilfssysteme / Peripherie} \\
\cline{3-4}
& &
\multirow{3}[2]{*}{Vorrichtung / Hilfmittel} &
\multicolumn{1}{l|}{Vorrichtungs- \& Spannsysteme} \\
& & & \multicolumn{1}{l|}{Werkstückflusssystem} \\
& & & \multicolumn{1}{l|}{Steuerung} \\
\cline{3-4}& & Werkzeuge & \\
\cline{2-4}\\
%%%
\end{tabularx}%
\label{tab:addlabel}%
\end{longtable}%
\end{document}
答案3
您是否嘗試過在多列之後插入空白行?我遇到了同樣的問題,我意識到添加空行就足夠了,以便為另一行獲得足夠的空間。
& & & \multicolumn{1}{l|}{Werkstückflusssystem} \\
& & & \\
& & & \multicolumn{1}{l|}{Steuerung} \\
& & & \\