Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Tabellenzeilen zählen lassen, ohne header...

358 views
Skip to first unread message

Christian Kellermann

unread,
Jan 29, 2014, 5:39:13 AM1/29/14
to
Hallo,

ich möchte in einer Tabelle Zeilennummern automatisch hinzufügen. Dazu
habe ich folgendes Minimalbeispiel. (Die eigentliche Tabelle umspannt
mehrere Seiten und soll von einem Programm in das Latex template
eingefügt werden):

--8<---------------cut here---------------start------------->8---
\documentclass[a4paper]{scrreprt}
\usepackage{longtable}
\usepackage{array}

\begin{document}

\newcounter{rowno}

\begin{center}
\setcounter{rowno}{0}
\begin{longtable} { |>{\stepcounter{rowno} \therowno}l|l|}
\multicolumn{2}{l}{\small \em Heading of my table} \\
\hline
\em Id & \em Content \\ \hline
\endhead
\hline \multicolumn{2}{r}{{\small \em Continued on next page...}} \\
\endfoot
\hline \multicolumn{2}{r}{{\small \em End of table}} \\
\endlastfoot
& content 1\\
& content 2\\
\end{longtable}
\end{center}

\end{document}
--8<---------------cut here---------------end--------------->8---

Das zeigt zwei Probleme:

1. Die Nummer steht auch in meinem "Tabellen-Header". Wie mache ich das
richtig?

2. Der Header hat nicht diesselbe Länge, wie die folgenden Zeilen? Was
tue ich dagegen?


Vielen Dank!

Christian

Rolf Niepraschk

unread,
Jan 29, 2014, 6:36:46 AM1/29/14
to
Am 29.01.2014 11:39, schrieb Christian Kellermann:
> Hallo,
>
> ich möchte in einer Tabelle Zeilennummern automatisch hinzufügen. Dazu
> habe ich folgendes Minimalbeispiel. (Die eigentliche Tabelle umspannt
> mehrere Seiten und soll von einem Programm in das Latex template
> eingefügt werden):
...
Hier ein Beispieldokument, aus dem Du Anregungen beziehen kannst:

%----- num-tab.tex -------
\listfiles
\documentclass[a4paper,pagesize]{scrartcl}
\usepackage{array}

\newcounter{tabline}

\newcolumntype{n}{>{\refstepcounter{tabline}\thetabline\enspace}l}
\newcolumntype{m}{>{\refstepcounter{tabline}\phantom{\thetabline}\enspace}l}

\begin{document}

\begin{tabular}{n}
Hugo \\
Gustav \label{FOO} \\
\multicolumn{1}{m}{Herbert} \\
Fridolin
\end{tabular}

\bigskip

Siehe Tabellenzeile~\ref{FOO}

\end{document}
%----------------------------

...Rolf


Christian Kellermann

unread,
Jan 30, 2014, 4:10:53 AM1/30/14
to
Hallo!

Rolf Niepraschk <Rolf.Ni...@gmx.de> writes:

> \newcolumntype{n}{>{\refstepcounter{tabline}\thetabline\enspace}l}
> \newcolumntype{m}{>{\refstepcounter{tabline}\phantom{\thetabline}\enspace}l}
>
> \begin{document}
>
> \begin{tabular}{n}
> Hugo \\
> Gustav \label{FOO} \\
> \multicolumn{1}{m}{Herbert} \\
> Fridolin
> \end{tabular}

Das funktioniert mit der Nummerierung wunderbar. Allerdings habe ich in
meiner Tabelle links noch einen Balken, also entsprechend Deines
Beispiels "\begin{tabular}{|n|}". Mit \multicolumn wird der Linke Balken
"übermalt". Wie kann ich das reparieren?

Vielen Dank!

Christian

Christian Kellermann

unread,
Jan 30, 2014, 4:23:56 AM1/30/14
to
Wer selber denkt, hat mehr vom Hirn. Ich muß natürlich einfach den
multicolumn content entsprechend setzen: \multicolumn{1}{|m|}... Dann
klappts auch wie gewünscht.

Danke noch einmal!

Christian

Rolf Niepraschk

unread,
Jan 30, 2014, 9:55:05 AM1/30/14
to
Am 30.01.2014 10:10, schrieb Christian Kellermann:
...
>
> Das funktioniert mit der Nummerierung wunderbar. Allerdings habe ich in
> meiner Tabelle links noch einen Balken, also entsprechend Deines
> Beispiels "\begin{tabular}{|n|}". Mit \multicolumn wird der Linke Balken
> "übermalt". Wie kann ich das reparieren?
>

So, wie Du es selbst herausgefunden hast. Ansonsten ist die typografisch
noch bessere Lösung: Verzichte auf senkrechte Linien in Tabellen. Lies dazu:

==> http://www.ctan.org/pkg/booktabs-de

...Rolf


Christian Kellermann

unread,
Jan 30, 2014, 10:15:39 AM1/30/14
to
In der Tat! Vielen Dank für die Anregungen.
0 new messages