Bestimmte Tabellenzellen in einer Longtable referenzieren

Tabellen und Grafiken erstellen und anordnen


Schunki
Forum-Anfänger
Forum-Anfänger
Beiträge: 35
Registriert: Di 23. Jul 2013, 08:43

Bestimmte Tabellenzellen in einer Longtable referenzieren

Beitrag von Schunki »

Hallo zusammen!

Wie der Titel schon sagt, würde es mich interessieren ob es möglich ist auf bestimmte Tabellenzellen innerhalb einer Longtable zu referenzieren.

Das heißt, ich habe eine Zelle in der Tabelle in welcher ein Inhalt steht, der wiederum aus einer anderen Zelle der selben Tabelle die aber x Seiten weiter hinten steht referenziert werden soll.


Ich bedanke mich schon jetzt für Eure Antworten!

Gruß
Andreas

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »


Schunki
Forum-Anfänger
Forum-Anfänger
Beiträge: 35
Registriert: Di 23. Jul 2013, 08:43

Beitrag von Schunki »

Hallo Elke!

Zuerst einmal vielen Dank für Deine Antwort! Jedoch hat mir der Artikel leider nicht wirklich weiter geholfen, da es mir besonders darauf ankommt, dass die Tabellezelle nicht nur referenziert ist, sondern auch eine Sprungmarke verpasst kommt um von einer Zelle auf eine andere Verweisen und vor allem springen zu können.

Ich versuche mal nachfolgend darzustellen was ich meine:
  Gruppe    |   Parameter  |   Erläuterung
--------------------------------------------------------------------
  Gruppe1   |   Parameter1 | text text text text
             ------------------------------------------------------
            |   Parameter2 | text text text text
             ------------------------------------------------------ 
            |   Parameter3 | text text text text
--------------------------------------------------------------------
 Gruppe2    |   Parameter1 | text (siehe auch Gruppe1/Parameter2)
             ------------------------------------------------------
            |   Parameter2 | text text text text
Da ich wie gesagt mit longtable arbeite und sich meine Tabelle über etliche Seiten erstreckt will ich quasi über einen Klick auf "Gruppe1/Parameter2" in die dazugehörige Spalte springen.

Ich hoffe, ich konnte mein Problem damit besser erklären!

Gruß
Andreas

Besserwisser

Beitrag von Besserwisser »

Dir ist klar, dass du für "Sprünge" hyperref benötigst? Dir ist klar, dass es lästig ist, dir alle Infos aus der Nase zu ziehen und genau deshalb in den wichtigen Hinweisen zu diesem Unterforum drin steht, dass du ein vollständiges Minimalbeispiel machen sollst, das zeigt, was du ausprobiert hast und an dem wir selbst testen können?

Schunki
Forum-Anfänger
Forum-Anfänger
Beiträge: 35
Registriert: Di 23. Jul 2013, 08:43

Beitrag von Schunki »

Hier das gewünschte Minimalbeispiel zum spielen:
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{longtable}
\usepackage{array,ragged2e}
\usepackage{ragged2e}
\usepackage{multirow} 
\usepackage{hyperref}                        
\begin{document}
Text Text Text Text Text Text Text Text Text Text Text Text Text

\begin{longtable}
{|>{\RaggedRight}p{2cm}|>{\RaggedRight}p{3.5cm}|>{\RaggedRight}p{7.7cm}|}
\hline
\multirow{3}{*}[1em]{Gruppe1} & Parameter1 & Text Text Text Text \\ \cline{2-3}
							         & Parameter2 & Text Text Text Text \\ \cline{2-3}
							         & Parameter2 & Text Text Text Text \\ \cline{1-3}
\multirow{2}{*}[0.4em]{Gruppe1} & Parameter1 & Text (siehe Gruppe1/Parameter2) \\ \cline{2-3}
							         & Parameter2 & Text Text Text Text \\ \cline{1-3}

\end{longtable}
\end{document}

Noch so einer

Beitrag von Noch so einer »

Mit dem Laden von hyperref ist es nicht getan. Man muss auch Linkziele setzen und darauf verlinken:
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{longtable}
\usepackage{array,ragged2e}
\usepackage{ragged2e}
\usepackage{multirow}
\usepackage{blindtext}
\usepackage{hyperref}                        
\begin{document}
Text Text Text Text Text Text Text Text Text Text Text Text Text

\begin{longtable}
{|>{\RaggedRight}p{2cm}|>{\RaggedRight}p{3.5cm}|>{\RaggedRight}p{7.7cm}|}
\hline
\multirow{3}{*}[1em]{Gruppe1} & Parameter1 & Text Text Text Text \\ \cline{2-3}
                              & \hypertarget{Gruppe1/Parameter2}{Parameter2} & Text Text Text Text \\ \cline{2-3}
                              & Parameter2 & Text Text Text Text \\
                              \cline{1-3}
Gruppe2 & Parameter1 & \blindtext \\\hline
Gruppe3 & Parameter1 & \blindtext \\\hline
Gruppe4 & Parameter1 & \blindtext \\\hline
\multirow{2}{*}[0.4em]{Gruppe5} & Parameter1 & Text (siehe \hyperlink{Gruppe1/Parameter2}{Gruppe1/Parameter2}) \\ \cline{2-3}
                              & Parameter2 & Text Text Text Text \\ \cline{1-3}

\end{longtable}
\end{document}
Siehe dazu die Anleitung zu hyperref.

Außerdem brauchst Du in dem Fall gar kein multirow (siehe meine Beispiele mit viel Text in der letzten Spalte).

Desweiteren sind Klötzchengrafiken wie diese sehr unschön und sehr schlecht zu lesen. Du solltest Dir mal das Paket [url=htp://www.ctan.org/pkg/booktabs]booktabs[/url] anschauen. Damit kann man viel schönere Tabellen machen ohne vertikale Linien machen.

Diese Rahmen um die Zellen braucht man natürlich bei Formularen, die jemand ausfüllen soll. In fast allen anderen Fällen braucht man sie nicht und sie stören nur.

Schunki
Forum-Anfänger
Forum-Anfänger
Beiträge: 35
Registriert: Di 23. Jul 2013, 08:43

Beitrag von Schunki »

Super! Genau das hab ich gebraucht!
Vielen Dank für Deine Hilfe!

Gruß
Andreas

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Hier ist noch ein Vorschlag mit dem von Noch so einer genannten Paket booktabs und ohne die störenden vertikalen Linien. Außerdem habe ich die Breite Deiner Tabelle auf die Textbreite angepasst für den Fall, dass sie nicht in den Rand ragen soll.
\documentclass{article} 
\usepackage[ngerman]{babel} 
\usepackage[utf8]{inputenc} 
\usepackage[T1]{fontenc} 
\usepackage{longtable} 
\usepackage{array} 
\usepackage{ragged2e} 
%\usepackage{multirow}
\usepackage{booktabs}
\usepackage{hyperref}

\newcolumntype{R}[1]{>{\RaggedRight\hspace{0pt}}p{#1}}

\usepackage{blindtext}% für Fülltext
\begin{document} 
\blindtext

\begin{longtable}{R{2cm}R{3.5cm}R{\dimexpr\textwidth-5.5cm-6\tabcolsep\relax}} 
\toprule
Gruppe1 
  & Parameter1 & Text Text Text Text \\ 
  & \hypertarget{Gruppe1/Parameter2}{Parameter2} & Text Text Text Text \\
  & Parameter3 & Text Text Text Text \\ \midrule
Gruppe2
  &Parameter1&\blindtext\\
  &Parameter2&Text\\ \midrule
Gruppe3&Parameter1&\blindtext\\ \midrule
Gruppe4 
  & Parameter1 & Text (siehe \hyperlink{Gruppe1/Parameter2}{Gruppe1/Parameter2}) \\
  & Parameter2 & Text Text Text Text \\
\bottomrule
\end{longtable} 
\end{document} 

Noch so einer

Beitrag von Noch so einer »

Man kann die Sache mit den Spaltenbreiten übrigens auch noch etwas automatisieren, beispielsweise:
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{ltablex}
\usepackage{array}
\usepackage{ragged2e}
%\usepackage{multirow}
\usepackage{booktabs}
\usepackage{hyperref}

\newcolumntype{R}[1]{>{\RaggedRight\hspace{0pt}\setlength{\hsize}{#1\hsize}}X}

\usepackage{blindtext}% für Fülltext
\begin{document}
\blindtext

\begin{tabularx}{\textwidth}{R{.15}R{.2}R{.65}}
\toprule
\endhead
\bottomrule
\endlastfoot
Gruppe1
  & Parameter1 & Text Text Text Text \\
  & \hypertarget{Gruppe1/Parameter2}{Parameter2} & Text Text Text Text \\
  & Parameter3 & Text Text Text Text \\* \midrule
Gruppe2
  &Parameter1&\blindtext\\
  &Parameter2&Text\\ \midrule
Gruppe3&Parameter1&\blindtext\\* \midrule
Gruppe4
  & Parameter1 & Text (siehe \hyperlink{Gruppe1/Parameter2}{Gruppe1/Parameter2}) \\
  & Parameter2 & Text Text Text Text \\
\end{tabularx}
\end{document}
oder wenn in den ersten beiden Spalten gar kein Zeilenumbruch benötigt wird:
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{ltablex}
\usepackage{array}
\usepackage{ragged2e}
%\usepackage{multirow}
\usepackage{booktabs}
\usepackage{hyperref}

\newcolumntype{R}[1]{>{\RaggedRight\hspace{0pt}\setlength{\hsize}{#1\hsize}}X}

\usepackage{blindtext}% für Fülltext
\begin{document}
\blindtext

\begin{tabularx}{\textwidth}{llR{1}}
\toprule
\endhead
\bottomrule
\endlastfoot
Gruppe1
  & Parameter1 & Text Text Text Text \\
  & \hypertarget{Gruppe1/Parameter2}{Parameter2} & Text Text Text Text \\
  & Parameter3 & Text Text Text Text \\* \midrule
Gruppe2
  &Parameter1&\blindtext\\
  &Parameter2&Text\\* \midrule
Gruppe3&Parameter1&\blindtext\\* \midrule
Gruppe4
  & Parameter1 & Text (siehe \hyperlink{Gruppe1/Parameter2}{Gruppe1/Parameter2}) \\
  & Parameter2 & Text Text Text Text \\
\end{tabularx}
\end{document} 

Antworten