Eu sei que essas perguntas são feitas com frequência, mas de alguma forma agora parece funcionar para mim.
Eu tenho um modelo da minha universidade sobre a aparência das minhas tabelas:
\documentclass[%
fontsize=11pt,
twoside=off
]{scrbook}
\usepackage{tabularx}
\usepackage[tablewithout, figurewithout]{caption}
\renewcommand{\arraystretch}{1.8}
\newcolumntype{M}{X<{\vspace{4pt}}}
\begin{document}
\vspace{\parskip}
\section*{Überschrift Tabelle 1}
\begin{table}[!h]
\fontsize{9pt}{13pt}\selectfont
\begin{tabularx}{\textwidth}{ M | M }
\multicolumn{1}{X}{\textbf{Spalte 1}}%
& \multicolumn{1}{X}{\textbf{Spalte 2}} \\
\hline
Nummer 1,\newline\,mehrzeilig in Schriftgröße 9 pt & Nummer 2 \\
\hline
Nummer 1 & Nummer 2 \\
\hline
Nummer 1 & Nummer 2 \\
\hline
\end{tabularx}
\caption{}
\end{table}
\vspace{\parskip}
\section*{Überschrift Tabelle 2}
\begin{table}[!h]
\fontsize{9pt}{13pt}\selectfont
\begin{tabularx}{\textwidth}{| M | M |}
\hline
\textbf{Spalte 1} & \textbf{Spalte 2} \\
\hline
Nummer 1 & Nummer 2 \\
\hline
Nummer 1 & Nummer 2 \\
\hline
Nummer 1 & Nummer 2 \\
\hline
\end{tabularx}
\caption{}
\end{table}
\vspace{\parskip}
\section*{Überschrift Tabelle 3}
\begin{table}[!h]
\fontsize{9pt}{13pt}\selectfont
\begin{tabularx}{\textwidth}{@{} M M @{}}
\textbf{Spalte 1} & \textbf{Spalte 2} \\
Nummer 1 & Nummer 2 \\
Nummer 1 & Nummer 2 \\
Nummer 1 & Nummer 2 \\
\end{tabularx}
\caption{}
\end{table}
\end{document}
(desculpe que eles estejam em alemão)
Agora tenho uma tabela que fica melhor exibida no formato paisagem. Eu fiz funcionar com sidewaystable, mas aqui a tabela só ocupa uma página.
Minhas tentativas de fazer tudo passar por várias páginas sempre falham com bastante antecedência.
esta é minha tentativa atual (com larguras de coluna personalizadas):
\documentclass[%
fontsize=11pt,
twoside=off
]{scrbook}
\usepackage{longtable}
\usepackage{rotating}
\usepackage{pdflscape}
\usepackage{tabularx} % Flexiblere Tabellen
\usepackage[tablewithout, figurewithout]{caption}
\renewcommand{\arraystretch}{1.8}
\newcolumntype{M}[1]{X<{\vspace{4pt}\hsize=#1\hsize}}
\begin{document}
\begin{table}[!h]
\fontsize{9pt}{13pt}\selectfont
\begin{longtable}{\textwidth}{| M{0.5} | M{1} | M{1} | M{0.5} | M{0.5} | M{0.5} | M{1} | M{1} | M{1} | M{3} |}
\hline
\textbf{id} & \textbf{Label} & \textbf{Grund} & \textbf{Offen} & \textbf{Durchfluss} & \textbf{Durchlass} & \textbf{Rückstau} & \textbf{HQ-Marken\footnote{Beachte: \gls{hq}}} & \textbf{Parkplatz} & \textbf{Notizen} \\
\hline
1 & & xy & xy & 0 & 0 & Ja & 0 & & xxxxyyyyyy\\
\hline
*unbelivebale amount of data*
507 & xy & & xy & 0 & 0 & xy & 0 & xy & xxxxyyyyyy\\
\hline
\end{longtable}
\caption{xy \cite{xy}}
\label{xy}
\end{table}
\end{landscape}
\end{document}
Agora estou recebendo cada vez mais mensagens de erro. Começando com o fato de que \texdwidth é um token pré-amplificado ilegal e ilegal, que \hline está fora da tabela. E cito:
A aba de alinhamento extra foi alterada para \cr.
Você escreveu muitas guias de alinhamento em uma tabela, fazendo com que uma delas se transformasse em uma quebra de linha. Certifique-se de ter especificado o número correto de colunas em sua tabela.
embora eu tenha certeza de que isso não está correto ou deve ter outra causa, porque esse erro não ocorre com a mesa lateral normal.
Desculpe pelo texto longo e qualquer ajuda será apreciada!
Responder1
Ansiando pelo comentário:
- Desculpe, disse francamente, seu código está uma bagunça. É impossível descobrir o que você gostaria de ter na mesa
- Qualquer tipo de tabela longa (
longtable
,xltabuilar
,longtblr
oftabularray
etc.)= não precisava ser encapsulada para floattable
. - O tipo de coluna
X
está disponível apenas emtabularx
,xltabular
,longtblr, etc. tables and not in
longtable`. - De acordo com a especificação da sua coluna, sua tabela é bastante ampla. Então cabe na
landscape
página é frágil - Do seu MWE não fica evidente o que é o conteúdo das colunas. Pode ser melhor que algumas colunas tenham largura natural (no MWE abaixo de ˙
Q
colunas em vez deX
.
Um exemplo de tabela possível, que pode servir de ponto de partida:
\documentclass[11pt]{scrbook}
\usepackage[margin=25mm]{geometry}% define page layout
\usepackage{pdflscape}
\usepackage{rotating}
\usepackage{tabularray}
\begin{document}
\begin{landscape}
\footnotesize
\begin{longtblr}[
caption = {xy},
label = {xy},
note{a} = {Beachte: {hq}},
]{hlines, vlines,
colspec = {X[0.5,l, font=\bfseries]
*{8}{X[l]}
X[3,l]},
row{1} = {font = \bfseries, m},
rowhead = 1}
% column deaders
i.d & Label & Grund & Offen & Durchfluss
& Durchlass & Rückstau & {HQ-\\Marken}\TblrNote{a}
& Parkplatz
& Notizen \\
1 & 2 & 3 & 4 & 5
& 6 & 7 & 8 & 9
& 10: xxxxyyyyyy \\
%*unbelivebale amount of data*
507 & xy & & xy & 0
& 0 & xy & 0 & xy
& xxxxyyyyyy \\
\end{longtblr}
\end{landscape}
\end{document}
Por favor, edite sua pergunta, remova todas as falhas mencionadas acima e forneça mais dados (fictícios) em sua tabela, que imitam dados reais. Esclareça também qual é o seu problema ou onde você travou ao escrever sua tabela. Depois disso será possível ajudá-lo melhor.