von PaulMuaddib » Mo 24. Jun 2019, 11:12
Hallo,
aus einer CSV Datei möchte ich nur einen bestimmten Bereich von Zeilen mit Datatool ausgeben. Beispiel: Zeile 3 bis 4 oder 6 bis 8. Gibt es eine Möglichkeit die akuelle Zeile über eine Bedingung in \DTLforeach abzufragen?
CSV Datei
Spalte 1;Spalte 2;Spalte 3
;;
123;123;123
123;123;123
;;
456;456;456
456;456;456
456;456;456
\documentclass[a4paper,12pt]{article}
\usepackage{datatool}
\usepackage{colortbl}
\RequirePackage[ngerman]{babel}
\DTLsetseparator{;}
\DTLloaddb[omitlines=1,keys={c1,c2,c3}]{ctext}{test.csv}
\begin{document}
\begin{table}
\begin{tabular}{ccc}
\textbf{Spalte 1} & \textbf{Spalte 2} & \textbf{Spalte 3}
\DTLforeach{ctext}{\cola=c1,\colb=c2,\colc=c3}{%
\ifthenelse{\DTLcurrentindex=2}{\dtlbreak}{}
\\\DTLifoddrow{\rowcolor{white}}{\rowcolor[gray]{.80}}%
\cola & \colb & \colc
}
\end{tabular}
\end{table}
\end{document}
Hallo,
aus einer CSV Datei möchte ich nur einen bestimmten Bereich von Zeilen mit Datatool ausgeben. Beispiel: Zeile 3 bis 4 oder 6 bis 8. Gibt es eine Möglichkeit die akuelle Zeile über eine Bedingung in \DTLforeach abzufragen?
CSV Datei
[code]
Spalte 1;Spalte 2;Spalte 3
;;
123;123;123
123;123;123
;;
456;456;456
456;456;456
456;456;456
[/code]
[code]
\documentclass[a4paper,12pt]{article}
\usepackage{datatool}
\usepackage{colortbl}
\RequirePackage[ngerman]{babel}
\DTLsetseparator{;}
\DTLloaddb[omitlines=1,keys={c1,c2,c3}]{ctext}{test.csv}
\begin{document}
\begin{table}
\begin{tabular}{ccc}
\textbf{Spalte 1} & \textbf{Spalte 2} & \textbf{Spalte 3}
\DTLforeach{ctext}{\cola=c1,\colb=c2,\colc=c3}{%
\ifthenelse{\DTLcurrentindex=2}{\dtlbreak}{}
\\\DTLifoddrow{\rowcolor{white}}{\rowcolor[gray]{.80}}%
\cola & \colb & \colc
}
\end{tabular}
\end{table}
\end{document}
[/code]