goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Direktlinks:
Zuletzt aktive Beiträge
Unbeantwortete Beiträge
[Erweitert]

Forenstatistik:
Beiträge: 98069
Top-Poster: Johannes_B (5059)

Wir begrüßen unseren neuesten Benutzer LouisXIV.

Links:


Mit Unterstützung von DANTE e.V.: Deutschsprachige Anwendervereinigung TeX. Danke den Mitgliedern!





Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Selbstfortsetzende Tabelle / Kalender

 

teido
Forum-Newbie
Forum-Newbie

Beiträge: 4
Anmeldedatum: 24.01.19
Wohnort: Darmstadt
Version: ---
     Beitrag Verfasst am: 24.01.2019, 20:08     Titel: Selbstfortsetzende Tabelle / Kalender
  Antworten mit Zitat      
Hallo ihr Liebe,
ich hoffe das Thema passt unter Tabellen.

Zum Problem:
Ich bin gerade dabei, eine Art von Taschenkalender zu erstellen, welcher die Zeitspanne eines halben Jahres abdeckt. (1 Semester).

Im laufe der Erstellung bin ich allerdings auf ein Problem gestoßen, für welches ich nicht so recht den Ansatz finde:
Für jeden Monat soll eine Tagesübersicht erstellt werden, also vom 1. bis zum 28/30/31 etc. Der Benutzer gibt als Input ein, ob er sich im Sommersemester oder Wintersemester befindet, daraufhin wird Entschieden mit welchem Monat Angefangen wird (Oktober oder April). Zusätzlich gibt er den ersten Tag des ersten Monats an.
Mit diesen Werten soll mir Latex nun automatisch die Kalenderblätter für jeden Monat erstellen, so dass ich diese in meinem Layout einfügen kann.

Dazu muss ich zunächst eine Tabelle automatisch generieren, was jedoch scheitert: (hier einmal exemplarisch die vorgehensweise)
Code • Öffne in Overleaf

\begin{tabular}{rlr}
\multido{}{Datum & Tag & Event \\}{n}
\end{tabular}
 

Die Idee dahinter: Je nach Monat variiert n, der Tag wird wohl später mit einer Fallunterscheidung eingepflegt, je nachdem wie sich ein counter durch 7 teilen lässt. Das Problem jedoch: Der Output läuft so nicht auf eine n-Zeilige Tabelle hinaus, sondern auf diverse Fehlermeldungen.

Für jeden Hinweis wäre ich dankbar, auch für die ein oder andere Idee für das Gesamtkonzept.

Viele Grüße,
Teido
Private Nachricht senden Benutzer-Profile anzeigen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.01.2019, 21:01     Titel:
  Antworten mit Zitat      
Warum verwendest du nicht eines der Kalender-Pakete?

Ansonsten sei darauf hingewiesen, dass jede Zelle einer Tabelle eine eigene Gruppe ist. Man kann daher nur sehr eingeschränkt innerhalb einer Tabelle per Schleife Zeilen generieren. Ggf. kann man jedoch Zeilen in einem Makro aufsammeln. Da ich ohne InfoMinimalbeispiel aber derzeit nicht einmal weiß, woher bei dir \multido kommt …

teido
Forum-Newbie
Forum-Newbie

Beiträge: 4
Anmeldedatum: 24.01.19
Wohnort: Darmstadt
Version: ---
     Beitrag Verfasst am: 26.01.2019, 12:36     Titel:
  Antworten mit Zitat      
Das ich mit keines der Kalender-Pakete angeschaut habe liegt wohl daran, dass ich nicht wusste, dass es sowas gibt.. Werde mir das ganze mal anschauen.

Das multido kommt daher, so bin ich es etwa aus Matlab gewohnt, dass ich Zeilen einer Tabelle bzw. dort eines Arrays einfach Stück um Stück hintereinander hängen kann. Ähnliches hab ich mir für Latex erhofft.

Leider kann ich noch kein Minimalbeispiel geben, der bereits geschriebene Teil ist für das Layout zuständig und funktioniert, für den Teil des Kalenders selbst bin ich eher noch dabei mir passende befehle bzw. Pakete herauszufinden.

Die Idee mit dem Zeilen per Macro aufsammeln hört sich brauchbar an, hättest du vielleicht ein paar Stichworte wonach ich dafür suchen muss?

Grüße,
Teido
Private Nachricht senden Benutzer-Profile anzeigen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.01.2019, 12:52     Titel:
  Antworten mit Zitat      
Mit den Stichworten »tabelle aufsammeln« bin ich über die Schnellsuche hier im Forum praktisch direkt bei https://golatex.de/viewtopic,p,13552.html#13552 gelandet.

Für deinen Zweck eventuell auch noch von Interesse: tabularx, longtable, xltabular

teido
Forum-Newbie
Forum-Newbie

Beiträge: 4
Anmeldedatum: 24.01.19
Wohnort: Darmstadt
Version: ---
     Beitrag Verfasst am: 26.01.2019, 17:06     Titel:
  Antworten mit Zitat      
Ich hab mich einmal mit dem Link auseinander gesetzt und versucht, nachzuvollziehen was dort passiert:

Code • Öffne in Overleaf

\documentclass{article}
\usepackage[latin1]{inputenc}
\usepackage[table]{xcolor}
\usepackage{booktabs}

\makeatletter
\newcounter{count}
\newcommand{\zeileneintrag}{}

\newenvironment{tabelle
}{%
\global\let\zeileneintrag\@empty
\newcommand{\eintrag}[2]{
\addtocounter{count
} \g@addto@macro\zeileneintrag{####1 & ####2 \tabularnewline}
}
}{
\begin{tabular
}{l|r}
\topline
\zeileneintrag
\bottomline
\end{tabular}
\thecounter
}

\makeatother
\begin{document}

\begin{tabelle}
\eintrag{test1}{test2}
\eintrag{test3}{test4}
\end{tabelle}

\end{document}
 


Wenn ich das Prinzip richtig verstanden habe, wird eine neue Umgebung definiert, also die Tabelle. In dieser Umgebung kann der Befehl \eintrag aufgerufen werden, um eine Zeile hinzuzufügen. Ich hab versucht, dass ganze bis aufs minimalste herunter zu brechen, bin jedoch gescheitert.
Private Nachricht senden Benutzer-Profile anzeigen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.01.2019, 17:35     Titel:
  Antworten mit Zitat      
Du verwendest \addtocounter mit einem Argument. Der Befehl hat aber zwei. Was du mit dem Zähler count vorhast, ist mir auch nicht wirklich klar. Und dann würde ich eigentlich noch empfehlen, auch den Anfang der Tabelle und das Ende mit in \zeileneintrag einzufügen, so dass dann am Ende \zeileneintrag zu der kompletten Tabelle expandiert.

teido
Forum-Newbie
Forum-Newbie

Beiträge: 4
Anmeldedatum: 24.01.19
Wohnort: Darmstadt
Version: ---
     Beitrag Verfasst am: 28.01.2019, 10:25     Titel:
  Antworten mit Zitat      
Vielen dank, jetzt hab ich glaub ich erstmal alles, was ich brauche. Werde mich, sobald es läuft, mit dem fertigen Code noch einmal zurückmelden. Vielleicht ist ja nochmal irgendjemand auf der Suche nach sowas.
Btw. in meinem Code oben ist noch ein Fehler, so heißt es \..rule und nicht \..line in der Tabellen-Umgebung...
Private Nachricht senden Benutzer-Profile anzeigen

Neues Thema eröffnen Neue Antwort erstellen



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist Teil der goForen
goForen.de goMATLAB.de goLaTeX.de


  Datenschutzerklärung | Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2019 goLaTeX.de