Automatischer Zeilenumbruch \cite in Tabelle Thema ist als GELÖST markiert

Tabellen und Grafiken erstellen und anordnen


gary95

Automatischer Zeilenumbruch \cite in Tabelle

Beitrag von gary95 »

Moin,

ich möchte gerne eine Tabelle erstellen, in der ich in einer Spalte Zitate verwende. Allerdings ist ein Zitat zu lang und geht daher über die Spaltenbreite hinaus. Ich verwende tabularx, wodurch die Zeilenumbrüche bei normalem Text automatisch eingefügt werden, aber bei \cite scheint es nicht zu funktionieren. Gibt es dazu vielleicht einen Trick?

Mein Beispiel:
\documentclass[12pt,a4paper]{article}
\usepackage{hyperref}
\usepackage[utf8]{inputenc}
\usepackage{booktabs}
\usepackage{tabularx}
\usepackage{subcaption}
\usepackage{booktabs}
\usepackage[left=2cm,right=2cm,top=2cm,bottom=2cm]{geometry}
%% Zitierstil laden
\usepackage{csquotes}
\usepackage[backend=biber,style=apa, maxcitenames=3,natbib=true,doi=false]{biblatex}
\addbibresource{Literatur.bib} %Literaturquelle

\begin{document}
\begin{table}
\begin{tabularx}{\textwidth}{XXXc} \toprule
Autor (Jahr) & Anomalie & Maß & Effekt \\
\hline 
A: Value-Glamour \\
\midrule
\cite{Barbee.1996} & Sales-to-Price & Sales/MV & + \\
\cite{Desai.2004} & Op. Cashflow-to-Price & (EBIT+AfA-WCA)/MV \\
\bottomrule
\end{tabularx}
\end{table}
\end{document} 
Literaturliste
@article{Desai.2004,
 author = {Desai, Hemang and Rajgopal, Shivaram and Venkatachalam, Mohan},
 year = {2004},
 title = {Value-Glamour and Accruals Mispricing: One Anomaly or Two?},
 pages = {355--385},
 volume = {79},
 number = {2},
 journal = {Accounting Review}
}

@article{Barbee.1996,
 author = {Barbee, William C. and Mukherji, Sandip and Raines, Gary A.},
 year = {1996},
 title = {Do Sales--Price and Debt--Equity Explain Stock Returns Better than Book--Market and Firm Size?},
 pages = {56--60},
 volume = {52},
 number = {2},
 journal = {Financial Analysts Journal},
 doi = {10.2469/faj.v52.n2.1980}
}
Vielen Dank für eure Hilfe

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2456
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag von Bartman »

In der zweiten Zeile fehlt mindestens ein Et-Zeichen, damit es zu keiner Fehlermeldung kommt.

Ich sehe das beschriebene Problem im PDF nicht, aber es wäre ratsam, in der ersten Spalte den Blocksatz abzuschalten und den Inhalt linksbündig auszurichten.
\begin{tabularx}{\textwidth}{>{\raggedright}XXXc} 
Die Beschriftung der ersten Spalte passt eher zu der Ausgabe der Befehle \textcite und \citet (Option natbib).

Du darfst die vier Optionen beim Laden von geometry durch eine Zuweisung an die Option margin ersetzen. Diese Möglichkeit wird schon in der Zusammenfassung am Anfang der Dokumentation angesprochen.

Lade bitte hyperref als letztes Paket, wenn es keine Ausnahme gibt, die dagegen spricht.

gary95

Beitrag von gary95 »

Äh vielleicht taucht das Problem nicht auf, weil ich das Beispiel gekürzt habe :oops: :lol:

Muss ich für
 \begin{tabularx}{\textwidth}{>{\raggedright}XXXc} 
ein Paket laden? Wenn ich
\begin{tabularx}{\textwidth}{XXXc} 
einfach damit ersetze, bekomme ich eine Fehlermeldung

! Misplaced \noalign.
\midrule ->\noalign
{\ifnum 0=`}\fi \@aboverulesep =\aboverulesep \global \@...
l.50 \end{tabularx}
I expect to see \noalign only after the \cr of
an alignment. Proceed, and I'll ignore this case.

Vielleicht pack ich jetzt der Vollständigkeit halber meinen ganzen Code rein.
 \documentclass[12pt,hidelinks,a4paper]{article}
\usepackage{hyperref}
\usepackage[utf8]{inputenc}
\usepackage{booktabs}
\usepackage{tabularx}
\usepackage{mathabx}
\usepackage{subcaption}
\usepackage{booktabs}
\usepackage[margin=2cm]{geometry}
%% Zitierstil laden
\usepackage{csquotes}
\usepackage[backend=biber,style=apa, maxcitenames=3,natbib=true,doi=false]{biblatex}
%Slash statt Komma (und &)
\DeclareDelimFormat*{multinamedelim}{\,/\,} 
\DeclareDelimFormat*{finalnamedelim}{} 
\DeclareDelimAlias{finalnamedelim}{multinamedelim} 
\DeclareDelimFormat*{finalnamedelim:apa:family-given}{}
\DeclareDelimAlias{finalnamedelim:apa:family-given}{multinamedelim} 
\LetLtxMacro{\cite}{\citet} 					%Jahr in Klammern
\renewcommand{\labelnamepunct}{\addcolon\space} %Doppelpunkt statt Punkt
%Bezeichnungen für und andere und Datum des Abrufs einer URL
\DefineBibliographyStrings{german}{andothers = {et\,al.\addot}, urlseen = {aufgerufen am}}
\addbibresource{Literatur.bib} %Literaturquelle
\begin{document}
\begin{table}
\begin{tabularx}{\textwidth}{>{\raggedright}XXXc}  \toprule
Autor (Jahr) & Anomalie & Maß & Effekt \\
\hline 
A: Value-Glamour \\
\midrule
\cite{Litzenberger.1982} & Dividendenrendite & D/MV & + \\
\cite{Rosenberg.1985} & Buch-Marktwertverhältnis & log(B/MV) & + \\
\cite{Bhandari.1988} & Leverage & FK/EK & + \\
\cite{Barbee.1996} & Sales-to-Price & Sales/MV & + \\
\textcite{Desai.2004} & Op. Cashflow-to-Price & (EBIT+AfA-WCA)/MV & +\\
\bottomrule
\end{tabularx}
\end{table}
\end{document}
Jetzt sind noch Modifikationen am Zitierstil enthalten (möglicherweise verursacht ja auch das Probleme, ich probier es gleich mal ohne diese aus).

Literatur ist dann jetzt
 @article{Rosenberg.1985,
 author = {Rosenberg, Barr and Reid, Kenneth and Lanstein, Ronald},
 year = {1985},
 title = {Persuasive evidence of market inefficiency},
 pages = {9--16},
 volume = {11},
 number = {3},
 issn = {0095-4918},
 journal = {Journal of Portfolio Management},
 doi = {10.3905/jpm.1985.409007}

@article{Litzenberger.1982,
 author = {Litzenberger, Robert H. and Ramaswamy, Krishna},
 year = {1982},
 title = {The Effects of Dividends on Common Stock Prices Tax Effects or Information Effects?},
 pages = {429},
 volume = {37},
 number = {2},
 issn = {00221082},
 journal = {Journal of Finance},
 doi = {10.2307/2327346}
}

@article{Barbee.1996,
 author = {Barbee, William C. and Mukherji, Sandip and Raines, Gary A.},
 year = {1996},
 title = {Do Sales--Price and Debt--Equity Explain Stock Returns Better than Book--Market and Firm Size?},
 pages = {56--60},
 volume = {52},
 number = {2},
 journal = {Financial Analysts Journal},
 doi = {10.2469/faj.v52.n2.1980}
}


@article{Bhandari.1988,
 author = {Bhandari, Laxmi C.},
 year = {1988},
 title = {Debt/Equity Ratio and Expected Common Stock Returns: Empirical Evidence},
 pages = {507--528},
 volume = {43},
 number = {2},
 issn = {00221082},
 journal = {Journal of Finance},
 doi = {10.1111/j.1540-6261.1988.tb03952.x}
}

@article{Desai.2004,
 author = {Desai, Hemang and Rajgopal, Shivaram and Venkatachalam, Mohan},
 year = {2004},
 title = {Value-Glamour and Accruals Mispricing: One Anomaly or Two?},
 pages = {355--385},
 volume = {79},
 number = {2},
 journal = {Accounting Review}
}
Wegen diesen Modifikationen muss hyperref am Anfang stehen, sonst funktioniert nichts (warum auch immer, hab das gestern ergooglet) :lol: Bin noch sehr neu in Latex.

So müsste das durchlaufen und mein Problem aufzeigen, wenn \raggedright wieder entfernt wird.

gary95

Beitrag von gary95 »

Ah, liegt tatsächlich an den Formatierungen. Puh, das ist ziemlich ärgerlich :shock:

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2456
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag von Bartman »

Die Ursache für Deine Fehlermeldung habe ich in meinem Beitrag genannt.

Auch Biber gibt eine Fehlermeldung aus, weil beim ersten Eintragstyp die schließende runde Klammer fehlt.

In der Anleitung zur Erstellung eines Minimalbeispiels erfährst Du, wie Du z. B. eine Fehlerquelle in der Literaturdatenbank ausschließen kannst.

\, fügt nicht nur ein schmales Leerzeichen ein, sondern verhindert auch einen Zeilenumbruch.

Versuch es mal damit, Deinen Befehl durch
\DeclareDelimFormat*{multinamedelim}{\addnbthinspace\slash\addthinspace}
auszutauschen.

Die Befehle findest Du im Abschnitt 4.7.4 "Adding Whitespace" in der Dokumentation von biblatex.

Anstelle der Änderung des Befehls \labelnamepunct darfst Du bei einer neueren Paketversion
\DeclareDelimFormat[bib]{nametitledelim}{\addcolon\space} 
verwenden.

Antworten