tabularx mit \multicolumn

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

Umbau in longtabu

von Sputnik1983 » Fr 7. Mär 2014, 15:12

Ich musste leider nochmal etwas nachbasteln, da die Tabelle zu umfangreich geworden ist.
Ich hab sie jetzt in eine longtabu verwandelt und noch etwas hin un her probiert.
Funktioniert soweit auch alles, solange kein Feld die entsprechende Spalte über die Seite hinweg ausdehnt. Seitenumbrüche scheinen nur innerhalb von Spalten möglich zu sein. Außerdem funktioniert dann auch die Formatierung des Headers nicht mehr.
Gibt es eine Möglichkeit einen Seitenumbruch auch innerhalb einer Zeile zu erreichen?

Beim Rumprobieren habe ich alle Spalten auf X gesetzt, weil sich damit die Spalten so elegant um den Faktor X verbreitern lassen. Kann man das so machen?

Ich bekomme auch immer Overfull/ bzw Underfull \hbox Warnungen. Ich nehme mal an die sind normal und vernachlässigbar?

Zur Verdeutlichung zwei VMs.

Das erste als Orientierung, wie es aussehen soll:
\documentclass[a4paper]{scrreprt}

\usepackage{selinput}
\SelectInputMappings{
 adieresis={ä},
 germandbls={ß},
 }
 
\usepackage[ngerman]{babel}

\usepackage[T1]{fontenc}
\usepackage{lmodern}

\usepackage{setspace}
\usepackage{blindtext}
\usepackage{pdflscape}
\usepackage{booktabs}
\usepackage{ragged2e}
\usepackage{array}
\usepackage{longtable}
\usepackage{tabularx}
\usepackage{tabu}	

\begin{document}

\begin{landscape} 
\begin{singlespacing}
\begin{small}
\tabulinesep=3pt
\begin{longtabu}to\linewidth{XXXX[4]X[2]}
\caption{Eine Tabelle}
\label{tab:Unterrichtsentwurf}\\
\toprule
\multicolumn{2}{l}{\textbf{Datum und Zeit}} & \today & & \textbf{Klasse:} 1a\\

\multicolumn{2}{l}{\textbf{Thema der Einheit:}} & \multicolumn{2}{l}{Die Schuldruckerei} & \textbf{Fach:} Deutsch\\

\multicolumn{2}{l}{\textbf{Thema der Stunde:}} & \multicolumn{2}{l}{Einführung der Schuldruckerei}\\

\multicolumn{2}{l}{\textbf{Ziel(e)/ Kompetenzen:}} & \multicolumn{2}{l}{Schriftspracherwerb}\\

\multicolumn{2}{l}{\textbf{Vorerfahrungen:}} & \multicolumn{3}{p{\dimexpr\linewidth-4.5cm-4\tabcolsep\relax}}{Hier kommt viel Text} \\

\toprule
\textbf{Das} & \textbf{ist} & \textbf{der} & \textbf{erste} & \textbf{Header}\\ \toprule
\endfirsthead
\toprule
\textbf{Das} & \textbf{ist} & \textbf{der} & \textbf{zweite} & \textbf{Header}\\ \toprule
\endhead
\midrule
\multicolumn{5}{r}{Fortsetzung auf der nächsten Seite}\\ 
\endfoot
\midrule
\multicolumn{2}{l}{\textbf{Weiterer Verlauf:}} & \multicolumn{3}{p{\dimexpr\linewidth-4.5cm-4\tabcolsep\relax}}{Hier kommt nochmal viel Text} \\
\bottomrule
\endlastfoot
Test1 & Test1 & Test1 & Hier kommt auch viel Text & Hier etwas weniger \\

\end{longtabu}
\end{small}
\end{singlespacing}
\end{landscape}

\end{document}

und das Zweite mit ordentlich blindtext um das Problem mit dem Seitenumbruch zu verdeutlichen:
\documentclass[a4paper]{scrreprt}

\usepackage{selinput}
\SelectInputMappings{
 adieresis={ä},
 germandbls={ß},
 }
 
\usepackage[ngerman]{babel}

\usepackage[T1]{fontenc}
\usepackage{lmodern}

\usepackage{setspace}
\usepackage{blindtext}
\usepackage{pdflscape}
\usepackage{booktabs}
\usepackage{ragged2e}
\usepackage{array}
\usepackage{longtable}
\usepackage{tabularx}
\usepackage{tabu}	

\begin{document}

\begin{landscape} 
\begin{singlespacing}
\begin{small}
\tabulinesep=3pt
\begin{longtabu}to\linewidth{XXXX[4]X[2]}
\caption{Eine Tabelle}
\label{tab:Unterrichtsentwurf}\\
\toprule
\multicolumn{2}{l}{\textbf{Datum und Zeit}} & \today & & \textbf{Klasse:} 1a\\

\multicolumn{2}{l}{\textbf{Thema der Einheit:}} & \multicolumn{2}{l}{Die Schuldruckerei} & \textbf{Fach:} Deutsch\\

\multicolumn{2}{l}{\textbf{Thema der Stunde:}} & \multicolumn{2}{l}{Einführung der Schuldruckerei}\\

\multicolumn{2}{l}{\textbf{Ziel(e)/ Kompetenzen:}} & \multicolumn{2}{l}{Schriftspracherwerb}\\

\multicolumn{2}{l}{\textbf{Vorerfahrungen:}} & \multicolumn{3}{p{\dimexpr\linewidth-4.5cm-4\tabcolsep\relax}}{\blindtext} \\

\toprule
\textbf{Das} & \textbf{ist} & \textbf{der} & \textbf{erste} & \textbf{Header}\\ \toprule
\endfirsthead
\toprule
\textbf{Das} & \textbf{ist} & \textbf{der} & \textbf{zweite} & \textbf{Header}\\ \toprule
\endhead
\midrule
\multicolumn{5}{r}{Fortsetzung auf der nächsten Seite}\\ 
\endfoot
\midrule
\multicolumn{2}{l}{\textbf{Weiterer Verlauf:}} & \multicolumn{3}{p{\dimexpr\linewidth-4.5cm-4\tabcolsep\relax}}{\blindtext} \\
\bottomrule
\endlastfoot
Test1 & Test1 & Test1 & \blindtext[2] & \blindtext \\

\end{longtabu}
\end{small}
\end{singlespacing}
\end{landscape}

\end{document}
Lieben Gruß und Dank![/code]

Danke!

von Sputnik1983 » Do 6. Mär 2014, 10:34

Funktioniert wunderbar!
Danke für die Hilfe!

Jetzt muss ich nur noch versuchen es fürs nächste mal zu verstehen ;)

von esdd » Do 6. Mär 2014, 10:04

Du kannst für die erste Spalte eine Breite direkt vorgeben (oder diese für den längsten Eintrag in der Spalte ermitteln lassen) und dann aus dieser die Spaltenbreite für den langen Text ausrechnen.

Außerdem würde ich den Text in den X-Spalten nicht im Blocksatz setzen, sondern linksbündig ausgeben.
\documentclass[]{scrreprt} 
\usepackage{selinput} 
\SelectInputMappings{ 
  adieresis={ä}, 
  germandbls={ß}, 
  } 
\usepackage[ngerman]{babel} 
\usepackage[T1]{fontenc} 
\usepackage{lmodern} 
\usepackage{blindtext} 
\usepackage{rotating} 
\usepackage{tabularx} 
\usepackage{booktabs}

\usepackage{ragged2e}
\newcolumntype{L}{>{\RaggedRight\hspace{0pt}}X}

\begin{document}   


\begin{sidewaystable} 
    \caption{Tabellenunterschrift} 
\begin{tabularx}{\textwidth}{p{4.5cm}LllL} 
       \toprule 
           \textbf{Datum und Zeit:} 
           & 
           \multicolumn{2}{l}{05.04.2014} 
           & 
           \textbf{Klasse:} 1a 
           & 
           \textbf{Fach:} Deutsch\\ 

          \textbf{Thema der Einheit:} 
          & 
          \multicolumn{4}{l}{Die Schuldruckerei} \\ 
          \textbf{Thema der Stunde:} 
          & 
          \multicolumn{4}{l}{Einführung der Schuldruckerei} \\ 
          \textbf{Ziel(e)/ Kompetenzen:} 
          & 
          \multicolumn{4}{l}{Schriftspracherwerb} \\ 
          \textbf{Voraussetzungen:} 
          & 
          \multicolumn{4}{p{\dimexpr\linewidth-4.5cm-4\tabcolsep\relax}}{\blindtext}\\ 
       \midrule 
          \textbf{Zeit/ Unterrichtsphase} 
          & 
          \textbf{Geplantes Unterrichtsgeschehen} 
          & 
          \textbf{Sozialform} 
          & 
          \textbf{Medien} 
          & 
          \textbf{Didaktisch-/ Methodischer Kommentar} \\ 
       \midrule 
          Unterrichtseinstieg 
          & 
          Test 
          & 
          Freiarbeit 
          & 
          Ritterbuch 
          & 
          Anmerkungen \\ 
       \bottomrule 
\end{tabularx} 
    \label{tab:Verlauf} 
\end{sidewaystable} 

\end{document}
Gruß
Elke

von Studi » Do 6. Mär 2014, 09:59

Die X-Spalten haben gleiche breite, die "innere" X-Spalte dehnt sich nicht einfach aus. Ich würde nicht zuviel Zeit verlieren und dann eben mal eine Breite manuell setzen, um zum Ergebnis zu kommen.
\multicolumn{4}{p{16cm}}{\blindtext}\\
Studi

tabularx mit \multicolumn

von Sputnik1983 » Do 6. Mär 2014, 00:36

Ich beschäftige mich gerade erstmals mit Tabellen in LaTeX und bin eigentlich ziemlich zufrieden für den ersten Versuch.

An der Stelle, an der der \blindtext steht, soll einiges an Text rein.
Ich hatte mir das so vorgestellt, das der Text über die ganze noch zur Verfügung stehenden Breit läuft, aber das mag ernicht machen.

Dachte mit dem multicolumn-Befehl genau das zu erreichen, aber das war wohl ein Trugschluss.

Würde mich sehr über Hilfe freuen!

Gruß
\documentclass[]{scrreprt}
\usepackage{selinput}
\SelectInputMappings{
 adieresis={ä},
 germandbls={ß},
 }
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{blindtext}
\usepackage{rotating}
\usepackage{tabularx}
\usepackage{booktabs}

\begin{document}	


\begin{sidewaystable}
	\caption{Tabellenunterschrift}
\begin{tabularx}{\textwidth}{lXllX} 
		\toprule
		 	\textbf{Datum und Zeit:} 
		 	&
		 	\multicolumn{2}{l}{05.04.2014}
		 	&
		 	\textbf{Klasse:} 1a
		 	&
		 	\textbf{Fach:} Deutsch\\

			\textbf{Thema der Einheit:}
			&
			\multicolumn{4}{l}{Die Schuldruckerei} \\
			\textbf{Thema der Stunde:}
			&
			\multicolumn{4}{l}{Einführung der Schuldruckerei} \\
			\textbf{Ziel(e)/ Kompetenzen:}
			&
			\multicolumn{4}{l}{Schriftspracherwerb} \\
			\textbf{Voraussetzungen:}
			&
			\multicolumn{4}{X}{\blindtext}\\
		\midrule
			\textbf{Zeit/ Unterrichtsphase} 
			& 
			\textbf{Geplantes Unterrichtsgeschehen} 
			& 
			\textbf{Sozialform} 
			& 
			\textbf{Medien}
			&
			\textbf{Didaktisch-/ Methodischer Kommentar} \\
		\midrule
			Unterrichtseinstieg
			&
			Test
			& 
			Freiarbeit 
			& 
			Ritterbuch
			& 
			Anmerkungen \\
		\bottomrule
\end{tabularx}
	\label{tab:Verlauf}
\end{sidewaystable}

\end{document}

Nach oben