PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : "Globales" Tabellendesigne?



Zizibee
16-03-2009, 14:35
Hallo zusammen,

ich habe auf Anraten des Forums hier mein Tabellendesign grundlegend überarbeitet und dafür 13 Tabellen anpassen müssen. Daher ist mir die Frage gekommen, ob es nicht irgendwie möglich ist das Design der Tabellen global festzulegen. Dann müsste man bei Designänderungen an nur einer Stelle etwas ändern und nicht bei jeder einzelnen Tabelle.
Ich habe schon etwas mit \newcommand rumgespielt, aber damit müsste man dann für jede Tabellengröße einen eigenen Befehl erstellen bzw. viele if benutzen, was die Sache aber auch nicht besser macht.
Wäre es irgendwie möglich sich mit Schleifen die Tabelle aufbauen zu lassen, um das Problem zu umgehen?

Mich würde einfach nur interessieren, ob so etwas überhaupt mit überschaubare Zeitaufwand möglich ist.

Spindoctor
16-03-2009, 22:38
hast du dir auch \newenvironment angeschaut?

Zizibee
17-03-2009, 09:05
hast du dir auch \newenvironment angeschaut?

Noch nicht, werd ich aber gleich mal nachholen :)

Zizibee
17-03-2009, 10:12
Ich gebe ja zu, dass ich mich nur etwas in \newenvironment eingelesen habe und das noch gründlicher geht. Auch schein der Befehl für Umgebungen echt praktisch zu sein.
Allerdings sehe ich da nicht wirklich viel, was mir bei meiner Frage weiterhelfen kann. Ich müsste auch mit \newenvironment auch für jede Tabellengröße einen Eintrag schreiben oder nach jeder Zeile einen einfügen, damit ich im nachhinein noch Sachen wie Linien oder Hintergründe einheitlich ändern kann.

Oder kann \newenvironment noch etwas ganz tolles, was ich bisher übersehen habe?

Xenara
17-03-2009, 10:35
Was verstehst du unter "Tabellengrösse"? Breite? Länge? Anzahl Spalten? Anzahl Zeilen?
Mach doch am besten mal ein kleines Minimalbeispiel, wie deine Tabellen aussehen, was einheitlich sein soll, was veränderlich bleiben muss etc.
Im Moment ist mir dein Anliegen noch nicht ganz klar.

Zizibee
17-03-2009, 11:16
Okay, dann versuch ich mich mal genauer auszudrücken.
Ich hatte einige Tabellen mit unterschiedlicher Spalten und Zeilenanzahl. Leider waren sie hoffnungslos überladen, weil ich alles reingepackt habe, was ich konnte ;)
Dann habe ich die Kopfzeilen geändert, vertikale Linien und graue Hintergründe entfernt und auch die horizontalen Linien sind weitgehenst verschwunden. Sie sehen jetzt ungefähr so aus (hier mal zwei als Beispiel):

\documentclass[11pt]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{dcolumn} % Ausrichten von Kommazahlen in Tabellen
\usepackage[utf8x]{inputenc}
\usepackage[intoc]{nomencl}


\begin{document}

\begin{table}[htbp]
\centering
\begin{tabular}{c D{,}{,}{-1} D{,}{,}{-1} D{,}{,}{-1}}
%\hline
\multicolumn{4}{c}{\begin{large}\textbf{\underline {Zusammensetzung der Proben}}\end{large}}\\[0,2cm]
\hline %\hline
%\rowcolor[gray]{0.86}
\textbf{Probe} &
\multicolumn{1}{c}{\textbf{Ag}} &
\multicolumn{1}{c}{\textbf{O}} &
\multicolumn{1}{c}{\textbf{H}} \\
\multicolumn{1}{c}{Nr.} &
\multicolumn{1}{c}{[\%]} &
\multicolumn{1}{c}{[\%]} &
\multicolumn{1}{c}{[\%]} \\
\hline
1 & 65,50 & 13,88 & 20,63 \\
% \hline \rowcolor[gray]{0.90}
4 & 66,45 & 13,98 & 19,69 \\
% \hline
5 & 59,09 & 21,73 & 18,92 \\
% \hline \rowcolor[gray]{0.90}
6 & 56,87 & 23,73 & 18,97 \\
% \hline
7 & 57,24 & 24,16 & 18,59 \\
% \hline \rowcolor[gray]{0.90}
8 & 57,82 & 22,69 & 19,49 \\
\hline
\end{tabular}
\caption{Zusammensetzung auf blabla}
\label{tab:gold}
\end{table}


\begin{table}[htbp]
\centering
\begin{tabular}{c D{,}{,}{-1}}
%\hline
\multicolumn{2}{c}{\begin{large}\textbf{\underline {Zusammensetzung der Schicht}}\end{large}}\\[0,2cm]
\hline %\hline
% \rowcolor[gray]{0.86}
\textbf{Element} & \multicolumn{1}{c}{\textbf{Anteil}}\\
& \multicolumn{1}{c}{[At \%]}\\
\hline
Ag & 23,76 \\
% \hline \rowcolor[gray]{0.90}
Si & 24,07 \\
% \hline
H & 52,18 \\
% \hline\rowcolor[gray]{0.90}
Total & 100,00 \\
\hline
\end{tabular}
\caption{Genaue Zusammensetzung der dünnen Schicht auf blabla}
\label{tab:050309_edx_au}
\end{table}

\end{document}

Ich habe mir jetzt überlegt, dass es doch eigentlich schön wäre, wenn ich global alles ändern könnte. Kommt also mein Betreuer und will die Kopfzeile lieber in Fettschrift haben, fände mehr Abstand nach der Kopfzeile besser oder will immer im Wechsel zwei Zeilen grau hinterlegt haben und zwei nicht, dann müsste ich bisher das in jeder Tabelle einzeln ändern und habe gehofft sich so die Zeit sparen zu können.

Das Erstellen der zweiten Tabelle könnte dann vieleicht so aussehen:

\Testtabelle{Zusammensetzung der Schicht}{Element}{Anteil}{}{[At \%]}{Ag}{23,76}...

Xenara
17-03-2009, 11:37
Die Idee ist klasse, das würde mich auch interessieren ;)
Spontan fällt mir dazu nichts sinnvolles ein, mit einem newcommand oder newenvironment scheint es aber nicht getan zu sein. Tut mir leid, dass ich dir da nicht konstruktiv weiterhelfen kann, vielleicht hat jemand sonst eine Idee?

Spindoctor
17-03-2009, 23:13
sorry, dass ich dir bisher nicht mehr helfen konnte - hab nur newcommand gelesen und mir gedacht, dass es damit ziemlich sicher nicht gehen wird.

wenn das problem überhaupt mit newenvironment lösbar ist, wirst du sicher optionale Argumente übergeben müssen...
http://www.weinelt.de/latex/newenvironment.html