Seite 2 von 2

Verfasst: Fr 21. Nov 2014, 17:26
von esdd
Ansätze für Dein oberes Problem, wenn xcolor mit der table Option geladen ist:
 ...
       \DTLforeach*[\value{DTLrowi}<10]{CsvTabelle}{% 
       \SpI=Column1,\SpII=Column2,\SpIII=Column3,\SpIV=Column4,\SpV=Column5,\SpVI=Column6,\SpVII=Column7,\SpVIII=Column8,\SpIX=Column9,\SpX=Column10,\SpXI=Column11%
       }{% 
       \DTLiffirstrow{\\\midrule}{%
        \ifthenelse{\DTLiseq{\SpI}{3}\or\DTLiseq{\SpI}{6}}{\\\midrule}{%
          \ifthenelse{\DTLiseq{\SpI}{5}}{\\\rowcolor{green}}{\\}}}% 
       \SpI&\SpII&\SpIII&\SpIV&\SpV&\SpVI&\SpVII&\SpVIII% 
       }% 
       \DTLdeletedb{CsvTabelle} 
oder

 ...
      \DTLforeach*{CsvTabelle}{% 
       \SpI=Column1,\SpII=Column2,\SpIII=Column3,\SpIV=Column4,\SpV=Column5,\SpVI=Column6,\SpVII=Column7,\SpVIII=Column8,\SpIX=Column9,\SpX=Column10,\SpXI=Column11%
       }{% 
       \DTLiffirstrow{\\\midrule}{%
       \ifthenelse{\equal{\theDTLrowi}{3}}{\\\rowcolor{red}}{\\}}% %
       \SpI&\SpII&\SpIII&\SpIV&\SpV&\SpVI&\SpVII&\SpVIII% 
       \ifthenelse{\equal{\theDTLrowi}{3}}{\dtlbreak}{}%
       }% 
        \DTLforeach*[\DTLisgt{\SpI}{3}]{CsvTabelle}{% 
       \SpI=Column1,\SpII=Column2,\SpIII=Column3,\SpIV=Column4,\SpV=Column5,\SpVI=Column6,\SpVII=Column7,\SpVIII=Column8,\SpIX=Column9,\SpX=Column10,\SpXI=Column11%
       }{% 
       \DTLiffirstrow{\\\midrule}{% 
       \ifthenelse{\equal{\SpI}{5}}{\\\rowcolor{red}}{\\}}%
       \SpI&\SpII&\SpIII&\SpIV&\SpV&\SpVI&\SpVII&\SpVIII% 
       \ifthenelse{\equal{\SpI}{5}}{\dtlbreak}{}%
       }% 
       \DTLdeletedb{CsvTabelle}
...

Verfasst: Sa 22. Nov 2014, 17:21
von Crys
Danke. Problem ist, dass die erste Zeile nicht markiert werden kann.
Aber anders geht es eben so kurz nicht ... wieso auch immer. Habe noch lange versucht den Fehler zu finden, aber ist einfach so ...

Ein Tipp zu den anderen Problem, mit nur einer Spalte, zwischen normalen Text?

Verfasst: Sa 22. Nov 2014, 19:52
von esdd
Crys hat geschrieben:Danke. Problem ist, dass die erste Zeile nicht markiert werden kann.
Aber anders geht es eben so kurz nicht ... wieso auch immer. Habe noch lange versucht den Fehler zu finden, aber ist einfach so ...
\documentclass{scrartcl} 
\usepackage[utf8]{inputenc} 
\usepackage{booktabs} 
\usepackage{array} 
\usepackage{rotating} 

\usepackage{varwidth} 
\newcommand{\rcel}[1]{\rotatebox{90}{\begin{varwidth}{5cm}#1\end{varwidth}}} 

\usepackage{datatool} 
\DTLsetseparator{;}

\usepackage[table]{xcolor}

\begin{document} 

\DTLloaddb[autokeys,omitlines=5]{CsvTabelle}{tableA.csv} 
\edef\spalten{\DTLcolumncount{CsvTabelle}} 

\begin{table}[hbtp!] 
     \footnotesize 
     \centering 
       
     \begin{tabular}{*{12}{r}} 
     \toprule 
     \rcel{Austritts-\\Geschw.}& 
     \rcel{Drehzahl} & 
     \rcel{Breite Ver-\\jüngung} & 
     \rcel{Verjüngte-\\Fläche} & 
     \rcel{Verjünguns-\\Faktor} & 
     \rcel{Druck-\\Verlust} & 
     \rcel{Leistung\\n. Messung} & 
     \rcel{Leistung\\inkl. Steig.} \\ 
     $[$m/s$]$&$[\frac{1}{\mathrm{min}}]$&$[$m$]$&$[$m$^2$$]$&$[$-$]$&$[$Pa$]$&$[$W$]$&$[$W$]$ 
     \DTLforeach*{CsvTabelle}{%  
       \SpI=Column1,\SpII=Column2,\SpIII=Column3,\SpIV=Column4,% 
       \SpV=Column5,\SpVI=Column6,\SpVII=Column7,\SpVIII=Column8%  
     }{%  
     \DTLiffirstrow{\\ \midrule \rowcolor{green}}{\\}%   
     \SpI&\SpII&\SpIII&\SpIV&\SpV&\SpVI&\SpVII&\SpVIII % 
     } 
     \end{tabular} 
     \DTLdeletedb{CsvTabelle} 
\end{table} 

\end{document}
Crys hat geschrieben:Ein Tipp zu den anderen Problem, mit nur einer Spalte, zwischen normalen Text?


Am einfachsten ist es, Du ergänzt die benötigten Spalten direkt in der tableA.csv.

Gruß
Elke