Tabellen Text vertikal mittig zentrieren Thema ist als GELÖST markiert

Tabellen und Grafiken erstellen und anordnen


student2017
Forum-Anfänger
Forum-Anfänger
Beiträge: 15
Registriert: Sa 4. Jul 2020, 12:08

Tabellen Text vertikal mittig zentrieren

Beitrag von student2017 »

Hallo Forum!

Ich habe folgendes Problem. In meiner Tabelle sind einige Zelleninhalte zweizeilig und in den Spalten daneben einzeilig bzw. umgekehrt. Nun möchte ich die einzeiligen Texte aber nicht mit der oberen Zeile bündig haben, sondern mittig zentrieren. Außerdem möchte ich Zeilenumbrüche erzwingen, um nicht eine neue Zeile machen zu müssen, die dann einen sehr weiten Abstand zur Zeile darüber hat. Und ich möchte es vermeiden, eine Worttrennung in einer neuen Zeile "weiterschreiben" zu müssen. Ich bin sicher, dass es da einige Lösungen für gibt. Bin selbst bei der Recherche aber nicht weiter gekommen und an \parbox und m{} gescheitert.

Anbei der Code, hier sieht man, wie unschön die Tabelle derzeit ist.
%______________________________________________________
% Grundeinstellungen

\documentclass[12pt,a4paper,
headsepline, %Kopfzeilenlinie
headheight=30pt, %Höhe für mehrzeilige Kapitelüberschriften
overfullrule
]{scrreprt}

%______________________________________________________
% Sprache

\usepackage[utf8]{inputenc} %Umlaute
\usepackage[T1]{fontenc} %Umlaute
\usepackage[ngerman]{babel} %für deutsche Sprache
\usepackage{blindtext} %ermöglicht das Einbinden eines Test-Textes mit \blindtext

%______________________________________________________
% Schriftart

\usepackage{lmodern} %Schriftarteinstellung "lmodern", "helvet", "tgheros", "bookman" "palatino", "tgbonum"
\renewcommand{\familydefault}{\sfdefault} %für serifenlose Schrift im Fließtext ähnlich Arial

%______________________________________________________
% Seiteneinrichtung

\usepackage{microtype} %optischer Randausgleich bei minimaler Buchstabenskalierung (verbessert Umbrüche)
\usepackage[]{geometry} %ermöglicht Seitenanpassung
\geometry{left=2.5cm,right=2.5cm,top=3.5cm,bottom=3.5cm}

%______________________________________________________
% Inhaltsverzeichnis

\setcounter{secnumdepth}{5} %maximal angezeigte Inhaltsverzeichnistiefe
\setcounter{tocdepth}{5} %maximal angezeigte Inhaltsverzeichnistiefe
\usepackage[colorlinks,pdfpagelabels,pdfstartview = FitH,bookmarksopen = true,bookmarksnumbered = true,linkcolor = black,plainpages = false,hypertexnames = false,citecolor = black]{hyperref} %verlinkt das Inhaltsverzeichnis

%______________________________________________________
%Mathematik

\usepackage{amsmath} %nummerierte und nicht-nummerierte Formeln
\usepackage{amsfonts} %mathematische Symbole
\usepackage{amssymb} %Sonderzeichen und Symbole
\usepackage{nicefrac} %ermöglicht die Darstellung eines schrägen Bruches
\DeclareMathSymbol{,}{\mathord}{letters}{"3B}

%______________________________________________________
%Grafiken und Bilder

\usepackage{subfig} %ermöglicht Unterabbildungen
\usepackage{graphicx} %Graphikeinstellung
\usepackage{float} %ermöglicht Gleiten und individuelle Positionierung mit [H]
\usepackage{pdfpages} %ermöglicht das Einbinden von PDFs
\usepackage{acronym} %ermöglicht die automatische Einbindung von Abkürzungen mit \ac


%______________________________________________________
%Zitate und Literaturverzeichnis

\bibliographystyle{apalike} %Literaturverzeichnis alphabetisch nach Autoren(nachnamen) und Jahr


%______________________________________________________
%Tabellen

\usepackage{tabularx} %Tabelleneinstellung
\usepackage{ragged2e} %ermöglicht zentrieren, links- und rechtsbündig
\usepackage{caption} %Über- und Unterschriften
\captionsetup[table]{skip=0pt,singlelinecheck=off} %Abstand zwischen Tabelle und Unterschrift und linksbündig
\usepackage{pdflscape} %ermöglicht Querformat

%_________________________________________________________________
%Gestaltung des Dokuments

\usepackage[automark,autooneside=false]{scrlayer-scrpage} %ermöglicht individuelle Anpassung der Kopf- und Fußzeilen
\pagestyle{scrheadings} %ermöglicht individuelle Anpassung der Kopf- und Fußzeilen
\clearpairofpagestyles %leert alle sechs Platzhalter, so dass wir sie anschließend nach unseren Vorstellungen befüllen können

\ihead{\headmark}
\chead{}
\ohead{\pagemark}

\ifoot{}
\cfoot{}
\ofoot{}

\renewcommand*{\chapterpagestyle}{headings}
\renewcommand*{\partpagestyle}{plain}

%_________________________________________________________________


\begin{document}

\begin{table}[H]
\caption{Zusammensetzung, Nachbehandlung, Herstelldatum und Witterungsbeanspruchung der untersuchten Wände}
\label{tab:Wandzusammensetzung}
\footnotesize
\renewcommand{\arraystretch}{1.3}
\begin{tabularx}{\textwidth}{|>{\Centering}p{2.4cm}|>{\Centering}X|>{\Centering}X|>{\Centering}X|>{\Centering}X|>{\Centering}X|>{\Centering}X|>{\Centering}X|>{\Centering}X|}
\hline
\textbf{Wand-Bezeichn.} & \pmb{I} & \pmb{II} & \pmb{III} & \pmb{IV} & \pmb{V} & \pmb{VI} & \pmb{VII} & \pmb{VIII} \\
\hline
\textbf{Zementgehalt [kg/m³]} & \multicolumn{2}{c|}{330} & \multicolumn{2}{c|}{290} & \multicolumn{2}{c|}{230} & \multicolumn{2}{c|}{215}\\
\hline
\textbf{Nachbehandlung} & \multicolumn{8}{c|}{Wand I,III,V,VII: keine (1. Tag in Schalung)} \\
 &  \multicolumn{8}{c|}{Wand II,IV,VI,VIII: 6 Tage unter feuchten Tüchern und Folie (1. Tag in Schalung)} \\
\hline
\textbf{Bewehrung} & \multicolumn{8}{c|}{Nordseite: Einzelstäbe \o 12, lichter Abstand 20 mm} \\
 & \multicolumn{8}{c|}{Südseite: Q 221} \\
\hline
\textbf{Betondeckung} & \multicolumn{8}{c|}{Nordseite: 5-30 mm; in Schritten zu 5 mm in ca. 30 cm breiten Streifen} \\
\textbf{[mm] (nom c)} & \multicolumn{8}{c|}{Südseite: 15 mm} \\
\hline
\textbf{Abmessung b/h/d [cm]} & \multicolumn{8}{c|}{200/170/12} \\
\hline
\end{tabularx}
\end{table}

\end{document}

Vielen Dank für eure Hilfe!
Dateianhänge
Beispiel.tex
(4.72 KiB) 33-mal heruntergeladen

ich meine ja nur

Re: Tabellen Text vertikal mittig zentrieren

Beitrag von ich meine ja nur »

Ich weiß leider nicht, was du bezüglich der m-Spalten versucht hast, aber eigentlich ist das nicht so kompliziert:
%______________________________________________________
% Grundeinstellungen

\documentclass[12pt,
  a4paper,% überflüssig, weil Voreinstellung
  headsepline, %Kopfzeilenlinie
  headheight=30pt, %Höhe für mehrzeilige Kapitelüberschriften
  overfullrule
]{scrreprt}

%______________________________________________________
% Sprache

\usepackage[utf8]{inputenc} %UTF8-kodiertes Dokument, Voreinstellung seit 2018-04-01 und damit überflüssig
\usepackage[T1]{fontenc} % 8-Bit-codierte Schriften
\usepackage[ngerman]{babel} %für deutsche Sprache, allerdings ist es besser, die Sprachoption bereits bei \documentclass anzugeben, damit neben babel auch andere Pakete sie sehen.
\usepackage{blindtext} %ermöglicht das Einbinden eines Test-Textes mit \blindtext, was aber im Beispiel nicht verwendet wurde.

%______________________________________________________
% Schriftart

\usepackage{lmodern} %Schriftarteinstellung "lmodern", "helvet", "tgheros", "bookman" "palatino", "tgbonum"
\renewcommand{\familydefault}{\sfdefault} %für serifenlose Schrift im Fließtext ähnlich Arial und damit als Brotschrift nur bedingt tauglich

%______________________________________________________
% Seiteneinrichtung

\usepackage{microtype} %optischer Randausgleich bei minimaler Buchstabenskalierung (verbessert Umbrüche)
\usepackage[]{geometry} %ermöglicht Seitenanpassung (bereits das Laden ändert die Einstellungen)
\geometry{left=2.5cm,right=2.5cm,top=3.5cm,bottom=3.5cm}% Das könnte man auch direkt als Optionen bei geometry angeben, wobei die Einstellungen nicht sonderlich gut gewählt sind.

%______________________________________________________
% Inhaltsverzeichnis

\setcounter{secnumdepth}{5} %maximal angezeigte Inhaltsverzeichnistiefe (siehe auch symbolische Werte wie \subparagraphnumdepth in der KOMA-Script-Anleitung)
\setcounter{tocdepth}{5} %maximal angezeigte Inhaltsverzeichnistiefe (siehe auch symbolische Werte wie \subparagraphtocdepth in der KOMA-Script-Anleitung)
\usepackage[colorlinks,pdfpagelabels,pdfstartview = FitH,bookmarksopen = true,bookmarksnumbered = true,linkcolor = black,plainpages = false,hypertexnames = false,citecolor = black]{hyperref} %verlinkt das Inhaltsverzeichnis mache aber alle Links schwarz, damit sie nur ja niemand findet, was übrigens mit hidelinks viel einfacher geht. Außerdem wird hyperref zu früh geladen, beispielsweise sollten amsmath, subfig, acronym davor geladen werden.

%______________________________________________________
%Mathematik

\usepackage{amsmath} %nummerierte und nicht-nummerierte Formeln
\usepackage{amsfonts} %mathematische Symbole
\usepackage{amssymb} %Sonderzeichen und Symbole
\usepackage{nicefrac} %ermöglicht die Darstellung eines schrägen Bruches
\DeclareMathSymbol{,}{\mathord}{letters}{"3B}

%______________________________________________________
%Grafiken und Bilder

\usepackage{subfig} %ermöglicht Unterabbildungen
\usepackage{graphicx} %Graphikeinstellung
\usepackage{float} %ermöglicht Gleiten und individuelle Positionierung mit [H]
\usepackage{pdfpages} %ermöglicht das Einbinden von PDFs
\usepackage{acronym} %ermöglicht die automatische Einbindung von Abkürzungen mit \ac


%______________________________________________________
%Zitate und Literaturverzeichnis

\bibliographystyle{apalike} %Literaturverzeichnis alphabetisch nach Autoren(nachnamen) und Jahr, was allerdings mit apalike ziemlich veraltet ist und auch zu englischen Begriffen im Literaturverzeichnis führt, weshalb das eigentlich keine gute Idee ist. Besser biblatex verwenden.


%______________________________________________________
%Tabellen

\usepackage{tabularx} %Tabelleneinstellung
\usepackage{ragged2e} %ermöglicht zentrieren, links- und rechtsbündig
\usepackage{caption} %Über- und Unterschriften
\captionsetup[table]{skip=0pt,singlelinecheck=off} %Abstand zwischen Tabelle und Unterschrift und linksbündig
\usepackage{pdflscape} %ermöglicht Querformat

%_________________________________________________________________
%Gestaltung des Dokuments

\usepackage[automark,autooneside=false]{scrlayer-scrpage} %ermöglicht individuelle Anpassung der Kopf- und Fußzeilen
\pagestyle{scrheadings} %ermöglicht individuelle Anpassung der Kopf- und Fußzeilen
\clearpairofpagestyles %leert alle sechs Platzhalter, so dass wir sie anschließend nach unseren Vorstellungen befüllen können

\ihead{\headmark}
\chead{}
\ohead{\pagemark}

\ifoot{}
\cfoot{}
\ofoot{}

\renewcommand*{\chapterpagestyle}{headings}
\renewcommand*{\partpagestyle}{plain}

\usepackage{calc}

%_________________________________________________________________


\begin{document}

\begin{table}[H]% Wenn man nicht will, dass es gleitet, kann man die Gleitumgebung auch einfach weglassen und \captionof verwenden.
\caption{Zusammensetzung, Nachbehandlung, Herstelldatum und Witterungsbeanspruchung der untersuchten Wände}% Da hier gar keine Tabellenunterschrift (siehe Kommentar oben) verwendet wird, sollte man beim Laden von scrreprt oder beim Laden von caption die entsprechende Option setzen, um die Formatierung für Überschriften zu erhalten.
\label{tab:Wandzusammensetzung}
\footnotesize
\renewcommand{\arraystretch}{1.3}
\begin{tabularx}{\textwidth}{|>{\Centering\hskip0pt}m{2.4cm}|>{\Centering}X|>{\Centering}X|>{\Centering}X|>{\Centering}X|>{\Centering}X|>{\Centering}X|>{\Centering}X|>{\Centering}X|}% Das wird so eher eine Schautafel als eine Tabelle, weil vertikale Linien in Tabellen eher schlecht sind.
\hline
\textbf{Wand-Bezeichn.} & \pmb{I} & \pmb{II} & \pmb{III} & \pmb{IV} & \pmb{V} & \pmb{VI} & \pmb{VII} & \pmb{VIII} \\
\hline
\textbf{Zementgehalt [kg/m³]} & \multicolumn{2}{c|}{330} & \multicolumn{2}{c|}{290} & \multicolumn{2}{c|}{230} & \multicolumn{2}{c|}{215}\\
\hline
\textbf{Nachbehandlung} & \multicolumn{8}{>{\Centering}m{\textwidth-4\tabcolsep-2.4cm}|}{Wand I,III,V,VII: keine (1. Tag in Schalung)\par
Wand II,IV,VI,VIII: 6 Tage unter feuchten Tüchern und Folie (1. Tag in Schalung)} \\
\hline
\textbf{Bewehrung} & \multicolumn{8}{>{\Centering}m{\textwidth-4\tabcolsep-2.4cm}|}{Nordseite: Einzelstäbe \o 12, lichter Abstand 20 mm\par
 Südseite: Q 221} \\
\hline
\textbf{Betondeckung} & \multicolumn{8}{c|}{Nordseite: 5-30 mm; in Schritten zu 5 mm in ca. 30 cm breiten Streifen} \\
\textbf{[mm] (nom c)} & \multicolumn{8}{c|}{Südseite: 15 mm} \\
\hline
\textbf{Abmessung b/h/d [cm]} & \multicolumn{8}{c|}{200/170/12} \\
\hline
\end{tabularx}
\end{table}

\end{document}
Für das Setzen von Zahlen mit Einheit sei übrigens ausdrücklich siunitx empfohlen.

ich meine ja nur

Re: Tabellen Text vertikal mittig zentrieren

Beitrag von ich meine ja nur »

Achso: Es seit auch noch auf Pakete wie multirow oder die Möglichkeit der Verwendung einer Tabelle innerhalb einer Tabellenzelle hingewiesen. Für schöne Tabellen sei auch booktabs erwähnt und als Top-Tabellen-Paket tabularray. Und dann gibt es noch das sehr schöne Buch über Tabellen mit LaTeX von Herbert Voss.

Antworten