Gérer la date automatiquement

Bonjour,

Je cherche un moyen de faire en sorte que de Juillet à Décembre mon fichier affiche

"année en cours/année en cours +1"

Et de Janvier à Juin "année en cours - 1/année en cours"

J'ai beau chercher sur le net, je ne trouve pas.

Merci d'avance

Réponses

  • Voir le paquet datetime.
  • Le package ifthen sert à faire des tests ; datetime donne des fonctions de date.
    Pour illustrer, le package TiKZ comporte une boucle \foreach facile d'usage.
    \documentclass{article}
    \usepackage[francais]{babel}
    \usepackage[utf8]{inputenc}
    \usepackage{amsfonts,amsmath,amssymb}
    \usepackage{tikz}
    \usepackage{datetime}
    \usepackage{ifthen}
    
    \newcounter{pcdte}\setcounter{pcdte}{\the\year}\addtocounter{pcdte}{-1}
    \newcounter{svte}\setcounter{svte}{\the\year}\stepcounter{svte}
    \newcommand{\anneescolaire}[1]{\ifthenelse{\m<6}{\thepcdte -- \the\year}{\the\year -- \thesvte}}
    
    \begin{document}
    Aujourd'hui, le \today, l'année scolaire est \anneescolaire{\the\month}.
    
    \bigskip
    \foreach \m in {1,...,12} {
    \monthname[\m] -- \anneescolaire{\m}
    
    }
    \end{document}
    
  • Merci Math Coss, ça marche bien, mais ça me met 2 erreurs :

    The compiler is having trouble understanding a command you have used. Check that the command is spelled correctly. If the command is part of a package, make sure you have included the package in your preamble using \usepackage{...}.
  • En effet, quand j'ai fait la macro \anneescolaire à partir de la version initiale dans le corps du texte, j'ai oublié de remplacer le \m qui est utilisé dans la boucle \foreach par #1 qui désigne l'argument de la macro \anneescolaire.
    \documentclass{article}
    \usepackage[francais]{babel}
    \usepackage[utf8]{inputenc}
    \usepackage{amsfonts,amsmath,amssymb}
    \usepackage{tikz}
    \usepackage{datetime}
    \usepackage{ifthen}
    
    \newcounter{pcdte}\setcounter{pcdte}{\the\year}\addtocounter{pcdte}{-1}
    \newcounter{svte}\setcounter{svte}{\the\year}\stepcounter{svte}
    \newcommand{\anneescolaire}[1]{\ifthenelse{#1<7}{\thepcdte -- \the\year}{\the\year -- \thesvte}}
    
    \begin{document}
    Aujourd'hui, le \today, l'année scolaire est \anneescolaire{\the\month}.
    
    \bigskip
    \foreach \m in {1,...,12} {
    \monthname[\m] -- \anneescolaire{\m}
    
    }
    \end{document}
    
  • Super, impec'

    Merci
Connectez-vous ou Inscrivez-vous pour répondre.