String/Parameter kürzen

Tabellen und Grafiken erstellen und anordnen


Snoopy.EL
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Do 17. Sep 2015, 09:42

String/Parameter kürzen

Beitrag von Snoopy.EL »

Hallo liebe Gemeinde,

ich bin ziemlicher Neuling, was LaTex betrifft und ich suche jetzt verzweifelt seit zwei Tagen bei Google nach einer Lösung, aber erfolglos - entweder bin ich zu doof oder aber es gibt (noch) keine Lösung dafür (was ich mir fast nicht vorstellen kann)

Zu meinem Problem:
Ich übergebe in einer Tabelle 9 Parameter, darunter auch in einer Spaltze die Wochentage von Montag bis Sonntag. Diese möchte ich aber nun gern auf die ersten zwei Buchstaben kürzen, das kann doch im Grunde nicht so schwierig sein - oder doch...?? :shock:

Vielleicht könnt ihr mir ja in dieser Sache weiterhelfen, bin für jede Hilfe dankbar!

Sollte mehr Code notwendig sein, sagt mir einfach Bescheid...

Grüße und vielen Dank schon mal

Snoopy
\newenvironment{timesheet}[1]
{   \setlength{\tabcolsep}{0pt}	
    \noindent\begin{longtable}{@{}p{0.15\textwidth}p{0.15\textwidth}p{0.1\textwidth}p{0.1\textwidth}p{0.1\textwidth}p{0.1\textwidth}p{0.1\textwidth}p{0.1\textwidth}p{0.1\textwidth}}   
     \multicolumn{2}{c}{} 				& \multicolumn{2}{c}{Arbeitszeit}& \multicolumn{2}{c}{Pausenzeit}		 			\\[2ex]
     	
     Tag 						& Datum	& Kommen	& Gehen	& Kommen 	& Gehen 	& Std		& Tage 	& Projekt 	\\[2ex]
     
     \endhead
  
     \row{Freitag}{01.05.2015}{}{}{}{}{}{}{BMW}
     \rowcolor[gray]{.9}\row{Samstag}{02.05.2015}{}{}{}{}{}{}{BMW}
     \rowcolor[gray]{.9}\row{Sonntag}{03.05.2015}{}{}{}{}{}{}{BMW}
     \row{Montag}{04.05.2015}{}{}{}{}{}{}{BMW}
     \row{Dienstag}{05.05.2015}{}{}{}{}{}{}{BMW}
     \row{Mittwoch}{06.05.2015}{}{}{}{}{}{}{BMW}
     \row{Donnerstag}{07.05.2015}{14:00}{18:00}{}{}{4,00}{0,5}{BMW}
     \row{Freitag}{08.05.2015}{09:00}{18:00}{12:00}{13:00}{4,00}{0,5}{BMW}
     \hline 						
     \gesamt{8,00}{2,00}

}{\end{longtable}}
Lass mich doch mal in Ruhe dazwischen reden!! :)

Besserwisser

Re: String/Parameter kürzen

Beitrag von Besserwisser »

Snoopy.EL hat geschrieben:darunter auch in einer Spaltze die Wochentage von Montag bis Sonntag. Diese möchte ich aber nun gern auf die ersten zwei Buchstaben kürzen, das kann doch im Grunde nicht so schwierig sein
Nö, das ist ganz einfach: Schreibmarke mit den Pfeiltasten auf den dritten Buchstaben setzen und dann so oft die Taste "entf" drücken, bis die störenden Buchstaben weg sind:
\newenvironment{timesheet}[1]
{   \setlength{\tabcolsep}{0pt}	
    \noindent\begin{longtable}{@{}p{0.15\textwidth}p{0.15\textwidth}p{0.1\textwidth}p{0.1\textwidth}p{0.1\textwidth}p{0.1\textwidth}p{0.1\textwidth}p{0.1\textwidth}p{0.1\textwidth}}   
     \multicolumn{2}{c}{} 				& \multicolumn{2}{c}{Arbeitszeit}& \multicolumn{2}{c}{Pausenzeit}		 			\\[2ex]
     	
     Tag 						& Datum	& Kommen	& Gehen	& Kommen 	& Gehen 	& Std		& Tage 	& Projekt 	\\[2ex]
     
     \endhead
  
     \row{Fr}{01.05.2015}{}{}{}{}{}{}{BMW}
     \rowcolor[gray]{.9}\row{Sa}{02.05.2015}{}{}{}{}{}{}{BMW}
     \rowcolor[gray]{.9}\row{So}{03.05.2015}{}{}{}{}{}{}{BMW}
     \row{Mo}{04.05.2015}{}{}{}{}{}{}{BMW}
     \row{Di}{05.05.2015}{}{}{}{}{}{}{BMW}
     \row{Mi}{06.05.2015}{}{}{}{}{}{}{BMW}
     \row{Do}{07.05.2015}{14:00}{18:00}{}{}{4,00}{0,5}{BMW}
     \row{Fr}{08.05.2015}{09:00}{18:00}{12:00}{13:00}{4,00}{0,5}{BMW}
     \hline 						
     \gesamt{8,00}{2,00}

}{\end{longtable}}
PS: Schon einmal etwas von einem Minimalbeispiel gehört? Nein, dann lies die wichtigen Hinweise zu diesem Unterforum!

Snoopy.EL
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Do 17. Sep 2015, 09:42

Beitrag von Snoopy.EL »

:lol: :D :lol: :D
Uhi, da hab ich mich wohl ungünstig ausgedrückt.... :)

Die jetzt festgeschriebenen Werte werden später durch Textmarken/Platzhalter ersetzt und ich bekomme die Daten dazu von einem anderen Programm übergeben, deshalb entfällt das händische kürzen.
\documentclass[9pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{ngerman}
\usepackage{colortbl}
\usepackage[paper=a4paper,left=25mm,right=25mm,top=15mm,bottom=15mm]{geometry}
\usepackage[pdftex]{graphicx}
\usepackage{longtable}

\newcommand{\row}[9]{#1 & #2 & #3 & #4 & #5 & #6 & #7 & #8 & #9 \\ } 	% \row{datum}{art}{arbeit_von}{arbeit_bis}{pause_von}{pause_bis}{stunden}{tage}{auftrag}

\newenvironment{timesheet}[1]
{   \setlength{\tabcolsep}{0pt}	
    \noindent\begin{longtable}{@{}p{0.15\textwidth}p{0.15\textwidth}p{0.1\textwidth}p{0.1\textwidth}p{0.1\textwidth}p{0.1\textwidth}p{0.1\textwidth}p{0.1\textwidth}p{0.1\textwidth}}   
     \multicolumn{2}{c}{} 				& \multicolumn{2}{c}{Arbeitszeit}& \multicolumn{2}{c}{Pausenzeit}		 			\\[2ex]
     	
     Tag 						& Datum	& Kommen	& Gehen	& Kommen 	& Gehen 	& Std		& Tage 	& Projekt 	\\[2ex]
     
     \endhead
  
     \row{Freitag}{01.05.2015}{}{}{}{}{}{}{BMW}
     \rowcolor[gray]{.9}\row{Samstag}{02.05.2015}{}{}{}{}{}{}{BMW}
     \rowcolor[gray]{.9}\row{Sonntag}{03.05.2015}{}{}{}{}{}{}{BMW}
     \row{Montag}{04.05.2015}{}{}{}{}{}{}{BMW}
     \row{Dienstag}{05.05.2015}{}{}{}{}{}{}{BMW}
     \row{Mittwoch}{06.05.2015}{}{}{}{}{}{}{BMW}
     \row{Donnerstag}{07.05.2015}{14:00}{18:00}{}{}{4,00}{0,5}{BMW}
     \row{Freitag}{08.05.2015}{09:00}{18:00}{12:00}{13:00}{4,00}{0,5}{BMW}
     \hline 						
     \gesamt{8,00}{2,00}

}{\end{longtable}}

\begin{document}

 \begin{timesheet} 

 \end{timesheet}										  

\end{document}	

Ich hoffe, das ist jetzt verständlicher... :-/
Falls nicht, bitte nicht schlagen... ;-)

Snoopy
Lass mich doch mal in Ruhe dazwischen reden!! :)

Besserwisser

Beitrag von Besserwisser »

Klick mal auf "Öffnen in Online-Editor". Merkst du was?

Wenn die Datei so von einem Programm ausgeschmissen wird, musst du ohnehin irgendwie in das, was das Programm auswirft eingreifen. Du kannst beispielsweise probieren in der Definition von \row das xstring-Paket zu verwenden, um mit \StrLeft das erste Argument zu kürzen.

saputello
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 98
Registriert: Do 15. Jan 2015, 08:49

Verboten!

Beitrag von saputello »

Multiposts sind nach dem Regeln hier übrigens nicht gestattet. Crossposts aller Art ohne Angabe eines Links auf die anderen Foren sind außerdem unhöflich.

Antworten