tabularx mit multicolumn läuft, aber erzeugt Fehler

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: tabularx mit multicolumn läuft, aber erzeugt Fehler

von LatexNeuling » Mi 2. Jul 2014, 15:48

Vielen Dank für die rege Unterstützung!

Habe nun doch die Variante von esdd übernommen. Damit ist der Text unter der Linie genauso eingerückt wie die Zeilen drüber. Sieht super aus! \bottomrule ist genau wie listoftoc rausgeflogen und ersetzt!

von u_fischer » Mi 2. Jul 2014, 14:53

{p{\columnwidth\tabcolsep}}
Das ist Quatsch. Das ergibt keine sinnvoll Länge. Wahrscheinlich ist da ein Minuszeichen verloren gegangen. Und das Paket calc brauchen solche Rechnungen außerdem:
\documentclass{article}
\usepackage{calc}

\begin{document}
\begin{tabular}{lll}
\multicolumn{3}{p{\columnwidth-\tabcolsep}}{blub}
\end{tabular}
\end{document}

von esdd » Mi 2. Jul 2014, 14:51

Nimm
\multicolumn{3}{p{\dimexpr\linewidth-2\tabcolsep\relax}}{...}
Dabei wird von der zur Verfügung stehenden Breite der links und rechts eingefügte Abstand \tabcolsep abgezogen. \dimexpr leitet die Längenberechnung ein und \relax beendet sie.

Und dann würde ich \bottomrule unbedingt durch
\midrule[\heavyrulewidth]
ersetzen, da sonst der Text unter dieser Linie viel zu dicht an dieser dran ist. Das gilt auch, falls du die einfachere Lösung von Johannes wählst.

Gruß
Elke

PS: Ersetze bei den Klassenoptionen liststotoc durch listof=totoc.

von LatexNeuling » Mi 2. Jul 2014, 14:50

Ach guck an...
ja das ist natürlich echt easy :shock:
:D Danke dir, so mach ichs

von Johannes_B » Mi 2. Jul 2014, 14:41

Du hast viiiiel zu komplisiert gedacht.
\documentclass{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage[justification=RaggedRight, singlelinecheck=false]{caption}
\usepackage{blindtext}

\begin{document}
\blindtext
\begin{table}
\begin{tabularx}{\textwidth}{XXl}
\toprule
A & B & C \\ \midrule
AA & BB & CC \\
\bottomrule
\end{tabularx}
Text der über alle Spalten geht und dementsprechend umgebrochen werden soll, wenn er das Seitenende erreicht. 
\caption{Minimalbeispiel Tabelle}
\label{Tabelle-Minimal}
\end{table}

\end{document}
 

tabularx mit multicolumn läuft, aber erzeugt Fehler

von LatexNeuling » Mi 2. Jul 2014, 14:23

Hallo,

ich habe folgendes Problem. Ich möchte eine Tabelle erzeugen, die unter der \bottomrule noch einen Text enthält der sich über alle Spalten erstreckt. Nach allerhand Zeit vor Google habe ich es nun soweit hinbekommen, dass es funktioniert wie ich es mir vorstelle. Er gibt mir beim Kompilieren jedoch 8 Fehlermeldungen aus :"Missing number, treated as zero" und "Illegal unit measure (pt inserted)".
Ich habe nun herausgefunden, dass genau mein Problem auftritt wenn man \\ verwendet und direkt eckige Klammern folgen, die aber nichts mit dem Spaltenabstand zu tun haben. Jedoch verwende ich keine eckigen Klammern und bin nun etwas ratlos.

Die Konstruktion: \multicolumn{3}{p{\columnwidth\tabcolsep}} habe ich mir ergoogelt. Bei meinen Versuchen wurde entweder die letzte Zeile in eine Zelle gequetscht oder kein Zeilenumbruch erzeugt.
\documentclass[12pt, a4paper, liststotoc]{scrreprt}[2007/10/19]
\usepackage[ngerman]{babel}		% neue deutsche Rechtschreibung
\usepackage{ucs}
\usepackage[latin9]{inputenc}	% Umwandlung für Sonderzeichen
\usepackage[T1]{fontenc}			% Silbentrennung bei Sonderzeichen
\usepackage{textcomp}					% Zusätzliche Symbolzeichen
\usepackage{cite}							% Zitieren
\usepackage{graphicx}					% Einbinden von Grafiken
\usepackage{tabularx}		% Tabellen mit definierter Breite
\usepackage{array,ragged2e}
\usepackage{booktabs}					% Linien für Tabellen
\usepackage[justification=RaggedRight, singlelinecheck=false]{caption} 			% captions werden linksbündig gesetzt
\usepackage{bibgerm}
\usepackage{multirow}
\usepackage{blindtext}
\usepackage[ 
nonumberlist, %keine Seitenzahlen anzeigen 
acronym,      %ein Abkürzungsverzeichnis erstellen 
toc,
section=chapter]           %Einträge im Inhaltsverzeichnis 
{glossaries} 
\usepackage[printonlyused]{acronym}
\usepackage[colorlinks=false]{hyperref}		% Muss als letztes eingebunden werden

\title{Minimalbeispiel zu tabularx und multicolumn.}
\author{Latex-Neuling}
\date{\today}
%
\begin{document}

\begin{table}[htp]
\begin{tabularx}{\textwidth}{XXl}
\toprule
A & B & C \\ \midrule
AA & BB & CC \\
\bottomrule
\multicolumn{3}{p{\columnwidth\tabcolsep}}{Text der über alle Spalten geht und dementsprechend umgebrochen werden soll, wenn er das Seitenende erreicht.} \\
\end{tabularx}
\caption{Minimalbeispiel Tabelle}
\label{Tabelle-Minimal}
\end{table}

\end{document}
Ich hätte sicher ein paar packages rausnehmen können, aber ich dachte mir falls es evtl. mit diesen zu tun hat ist es besser ich lasse alles drin.
Vielen Dank schon mal!

Nach oben