Je mets régulièrement à jour un document comportant de nombreux tableaux de chiffres. Il s'agit de longs et larges tableaux : je fais régulièrement des erreurs et perds du temps à me corriger.

Quand j'incrémente des valeurs dans ce tableau, j'augmente ensuite à la main le total qui figure en bas de colonne : cette opération ne pourrait-elle être automatique ?

Puis je reporte les totaux ainsi obtenus dans un grand tableau reprenant les valeurs annuelles : idem, cette opération ne pourrait-elle être automatique ?

Comme il s'agit d'un document long, je l'ai scindé en différents fichiers que j'appelle par la commande \include. Il s'agirait donc, lors de la compilation, de lire une valeur dans un premier fichier, puis de la reporter dans un second (celui qui reprend les valeurs annuelles). J'imagine que c'est complexe, mais à l'heure de LuaLaTeX, ne serait-ce possible ? N'y a-t-il quelque extension qui saurait faire cela ?

Posée 14 Avr '16, 08:45

Pathe's gravatar image

Pathe ♦♦
7.4k28196245
Taux d'acceptation : 55%

Modifiée 14 Avr '16, 22:56

1

Je te conseille de regarder les sections 4.3.1 et 4.3.2 de la documentation du package pgfplotstable, sans être vraiment sûr qu'il puisse te donner toutes les réponses à tes questions.

(14 Avr '16, 09:27) jerome dequeker jerome%20dequeker's gravatar image

Le package spreadtab permet ce genre de choses, mais il n'est pas écrit en lua et fonctionne donc dans toutes les saveurs de LaTeX.

Ouvrir dans l'éditeur
\documentclass{article}
\usepackage{spreadtab}
\makeatletter
\renewcommand\ST@ifcar@isletter[1]{%
    \begingroup\escapechar`\\
    \lowercase{\expandafter\ST@ifcar@isletter@i\detokenize{#1}}.\@nil
}
\def\ST@ifcar@isletter@i#1#2\@nil{%
    \endgroup
    \ifnum\numexpr(`#1-`a)*(`#1-`z)\relax>\z@\expandafter\@secondoftwo\else\expandafter\@firstoftwo\fi
}
\makeatother
\begin{document}
Premier tableau :
\begin{spreadtab}{{tabular}{|c|c|}}\hline
    @valeur 1 & 12\\\hline
    @valeur 2 & 37\\\hline
    @\textbf{Total} & b1+b2 tag(total)\\\hline
\end{spreadtab}

Tableau suivant :
\begin{spreadtab}{{tabular}{|c|c|}}\hline
    @Total pr\'ec\'edent & \STtag{total}\\\hline
    @valeur 1 & 24\\\hline
    @\textbf{Total} & b1+b2\\\hline
\end{spreadtab}
\end{document}
Lien permanent

Publiée 14 Avr '16, 10:34

unbonpetit's gravatar image

unbonpetit ♦♦
1.8k18
Taux d'acceptation : 68%

Modifiée 14 Avr '16, 12:36

Le fichier ci-dessus ouvert dans l'éditeur ne se compile pas, overleaf renvoie l'erreur suivante "Missing = inserted for ifnum. t l.24 end{spreadtab}" qui m'est incompréhensible.

(14 Avr '16, 12:18) pzorba75 pzorba75's gravatar image

Ah oui, pardon. C'est parce qu'en local, j'ai une version où plusieurs bugs sont corrigés. Il faudra d'ailleurs que je me décide à la mettre sur le CTAN.

(14 Avr '16, 12:35) unbonpetit ♦♦ unbonpetit's gravatar image
Votre réponse
(dés)activer l'aperçu

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Bases de Markdown

  • *italique* ou _italique_
  • **gras** ou __gras__
  • Lien ::[texte](http://url.com/ "Titre ")
  • Image : ?![alt texte](/path/img.jpg "Titre ")
  • Liste numérotée : 1. Foo 2. Bar
  • Pour ajouter un passage à la ligne, ajoutez deux espaces à l'endroit où vous souhaitez que la ligne commence.
  • Les balises HTML de base sont également prises en charge.