Gérer le prêt de livres dans Excel : le modèle et ses limites
Presque tous les organismes qui prêtent des livres à leurs membres ont commencé dans un tableur, et beaucoup y sont encore. C'est un choix raisonnable. Le logiciel est déjà installé, personne n'a besoin d'être formé, et un tableau bien construit suit sans broncher plusieurs centaines de titres. Cet article donne le modèle au complet (les colonnes exactes, les formules, la couleur qui signale les retards) pour que vous puissiez le refaire ce matin. Il nomme ensuite, sans détour, les trois endroits où il casse.
Trois feuilles, pas une
L'erreur la plus courante est de tout mettre dans une seule feuille : une ligne par livre, et deux colonnes au bout pour noter qui l'a emprunté. Ça marche jusqu'au deuxième prêt du même livre. Le jour où quelqu'un d'autre l'emprunte, vous écrasez le nom précédent. Vous perdez l'historique, donc la réponse à « qui avait ce livre avant celle-ci », qui est exactement la question qu'on pose quand un exemplaire ne revient pas.
Un livre est une chose. Un prêt est un événement. Les deux ne vivent pas au même endroit.
Créez donc trois feuilles, nommées sans accent et sans espace : Livres, Membres, Prets. Le nom sans espace n'est pas de la coquetterie. Un nom comme Prêts 2026 oblige à entourer le nom de la feuille d'apostrophes dans chaque formule qui la traverse, et une apostrophe oubliée est une formule cassée que personne ne sait réparer six mois plus tard.
Les colonnes, une par une
Dans la feuille Livres, une ligne par exemplaire physique. Pas par titre : si vous avez trois exemplaires du même roman, vous avez trois lignes, parce que vous prêtez un objet, pas une œuvre.
- A : Cote. Un identifiant unique, court, que vous écrivez au crayon dans le livre :
L-0001,L-0002. C'est la seule colonne dont vous ne pourrez jamais vous passer. Ne réutilisez jamais une cote retirée. - B : Titre.
- C : Auteurice. Nom d'abord, prénom ensuite, pour que le tri alphabétique donne quelque chose d'utile.
- D : ISBN. À mettre en format texte avant la première saisie, sinon Excel transforme les codes en notation scientifique et vous perdez les chiffres.
- E : Éditeur.
- F : Année.
- G : Catégorie. Une seule valeur, choisie dans une liste. Nous y revenons plus bas, c'est la colonne qui vous fera le plus de mal.
- H : Emplacement. La tablette, la salle, la boîte. C'est ce que votre bénévole du samedi cherchera en premier.
- I : État. Neuf, bon, abîmé, retiré.
- J : Note.
Dans la feuille Membres, une ligne par personne.
- A : Numéro.
M-001,M-002. - B : Nom.
- C : Courriel.
- D : Téléphone.
- E : Adhésion. La date, pour savoir qui est encore membre.
Dans la feuille Prets, une ligne par emprunt. Jamais de ligne effacée : un retour se note, il ne s'efface pas.
- A : Numéro de prêt.
- B : Cote du livre emprunté.
- C : Titre, calculée.
- D : Numéro de membre.
- E : Nom de la personne, calculée.
- F : Sortie. La date du jour où le livre part.
- G : Durée. En jours. Laissez vide pour la durée par défaut.
- H : Retour prévu, calculée.
- I : Retour réel. La date du jour où le livre revient. Vide tant qu'il n'est pas revenu.
- J : Retard, calculée.
- K : Statut, calculée.
Une règle qui vaut tout le reste : on ne tape jamais dans une colonne calculée. Mettez leur en-tête sur fond gris, celui des colonnes à saisir sur fond blanc. Le jour où une bénévole écrira « rendu » à la main par-dessus la formule de la colonne K, cette ligne cessera silencieusement de fonctionner, et vous ne le verrez pas.
Les formules
Le séparateur d'arguments est le point-virgule dans un Excel en français, la virgule dans un Excel en anglais. Les formules ci-dessous sont en français, à écrire dans la ligne 2 puis à tirer vers le bas.
Le titre du livre, rappelé depuis la feuille Livres à partir de la cote, pour éviter de le retaper à chaque prêt et de le retaper de travers :
=SIERREUR(RECHERCHEV($B2;Livres!$A:$B;2;FAUX);"Cote inconnue")
Le nom de la personne, sur le même principe :
=SIERREUR(RECHERCHEV($D2;Membres!$A:$B;2;FAUX);"Membre inconnu")
La date de retour prévue. C'est la formule centrale du modèle. Elle ajoute la durée à la date de sortie, et retient 21 jours quand la colonne Durée est vide, ce qui sera le cas neuf fois sur dix :
=SI($F2="";"";$F2+SI($G2="";21;$G2))
Le nombre de jours de retard. Zéro si le livre est revenu, zéro s'il n'est pas encore attendu, et le nombre de jours écoulés sinon :
=SI($I2<>"";0;SI($H2="";0;MAX(0;AUJOURDHUI()-$H2)))
Le statut, en clair, celui qu'on lit d'un coup d'œil :
=SI($I2<>"";"Rendu";SI($J2>0;"En retard";"En cours"))
Et, de retour dans la feuille Livres, la disponibilité de chaque exemplaire, c'est-à-dire l'existence d'un prêt ouvert portant cette cote :
=SI(NB.SI.ENS(Prets!$B:$B;$A2;Prets!$I:$I;"")>0;"Prêté";"Disponible")
Deux gestes qui prennent trente secondes et sauvent des heures. Sur la colonne Catégorie de Livres et sur la colonne Cote de Prets, posez une validation de données en liste (Données, puis Validation des données, puis Liste) pointant vers la plage source. Une catégorie ne peut plus être écrite de travers, une cote ne peut plus désigner un livre qui n'existe pas. Et figez la première ligne : Affichage, puis Figer les volets. Vous lisez la ligne 400 en sachant encore quelle colonne vous regardez.
Colorer les retards en rouge
C'est ce qui fait la différence entre un tableau qu'on consulte et un tableau qui vous parle. Sélectionnez la plage A2:K500 de la feuille Prets, puis Accueil, Mise en forme conditionnelle, Nouvelle règle, et enfin « Utiliser une formule pour déterminer pour quelles cellules le format sera appliqué ».
Créez trois règles, dans cet ordre, parce que la première qui s'applique gagne.
Règle 1, les prêts rendus, en gris pâle, texte estompé. Cochez « Interrompre si VRAI » pour qu'une ligne rendue ne soit jamais recolorée par les règles suivantes :
=$I2<>""
Règle 2, les retards, fond rouge pâle et texte rouge foncé :
=ET($I2="";$H2<>"";$H2<AUJOURDHUI())
Règle 3, les retours à venir dans les trois jours, fond orangé. C'est la règle qui vous fait envoyer un rappel avant le retard plutôt qu'après :
=ET($I2="";$H2<>"";$H2-AUJOURDHUI()<=3)
Le détail qui fait échouer neuf personnes sur dix : le signe de dollar devant la lettre de colonne, et rien devant le numéro de ligne. Avec $I2, chaque cellule de la ligne 2 regarde la colonne I, et la règle descend correctement d'une ligne à l'autre. Avec I2 sans dollar, chaque colonne teste sa propre valeur et la couleur part n'importe où. Avec $I$2, toute la plage teste la ligne 2 et le tableau est monochrome.
Faites l'essai en écrivant une date de retour prévue la semaine dernière sur une ligne d'essai. Si elle rougit, votre tableau est vivant. Effacez ensuite la ligne d'essai.
Les trois endroits où le tableau casse
Ce modèle est bon. Il ne casse pas parce qu'il est mal fait, il casse parce qu'un tableur est un fichier, et qu'une bibliothèque est un service rendu à des personnes.
Deux personnes en même temps. Le premier symptôme est un message annonçant que le fichier est verrouillé en écriture, puis l'apparition dans le dossier partagé de inventaire_v3_final.xlsx, inventaire_v3_final_JM.xlsx et inventaire_v3_final_corrigé.xlsx. La coédition existe, dans Microsoft 365 ou dans Google Sheets, et elle fonctionne, tant que tout le monde ouvre le fichier au même endroit, en ligne, avec un compte. Dans un organisme où trois bénévoles se relaient et où l'une travaille depuis son portable personnel sans réseau au sous-sol, ce n'est pas la situation réelle. Le jour où deux copies divergent, il n'existe aucune façon raisonnable de les réconcilier : il faut relire les deux, ligne par ligne.
Aucune vitrine possible pour les membres. Vos membres veulent savoir si vous avez tel titre, et ce que vous avez sur tel sujet. Le tableau contient la réponse, mais il ne peut pas la leur donner. Vous ne pouvez pas envoyer le fichier : il contient la feuille Membres, donc des courriels et des numéros de téléphone, et l'historique de qui a emprunté quoi, ce qui, dans un centre de femmes ou un centre communautaire, n'est pas un détail. Fabriquer chaque mois une copie expurgée, la convertir, la mettre en ligne, c'est un travail manuel qui sera abandonné au troisième mois. En pratique, l'organisme répond par courriel, une question à la fois.
La recherche par catégorie. La colonne Catégorie n'accepte qu'une valeur, et vos livres en ont plusieurs. Un essai sur l'histoire des femmes au Québec est à la fois histoire, féminisme et Québec. Trois solutions se présentent, et les trois se retournent contre vous. Écrire les trois dans la même cellule, séparées par des virgules, et le filtre ne les trouve plus. Créer une colonne par thème, et vous en avez quarante au bout d'un an. Choisir une seule catégorie, et personne ne retrouve le livre, parce que personne ne devine laquelle vous avez choisie. À trois cents titres, on s'en tire de mémoire. À douze cents, la mémoire est celle d'une seule personne, et cette personne finit par partir.
La Bibli
Si votre tableau tient encore, gardez-le. Ce modèle n'a pas été écrit pour vous faire changer d'outil, et une bibliothèque de deux cents livres tenue par une seule personne n'a besoin de rien d'autre.
Nous avons développé La Bibli pour le moment d'après : celui où plusieurs personnes cataloguent, où les membres veulent consulter la collection depuis leur téléphone, et où les catégories multiples deviennent nécessaires. On y catalogue en tapant un ISBN ou en scannant un code-barres, les prêts signalent eux-mêmes leurs retards, et la collection dispose d'une vitrine publique que vous partagez par lien ou que vous intégrez dans le site de votre organisme avec un bloc de code. Vos données sont hébergées à Toronto par défaut. C'est 330 $ US par année ou 30 $ US par mois, le premier mois est gratuit, et nous reprenons votre export existant jusqu'à 3 000 titres.
Si vous voulez d'abord voir à quoi ressemblerait votre tableau une fois repris, envoyez-le nous. Nous vous dirons ce qui passe et ce qui demandera du travail à la main, avant que vous décidiez quoi que ce soit.
Questions fréquentes
Faut-il vraiment trois feuilles plutôt qu'une seule?
Oui, dès que le même livre est prêté deux fois. Avec une seule feuille, le deuxième emprunt écrase le nom du premier et vous perdez l'historique, c'est-à-dire la réponse à « qui avait ce livre avant ». Un livre est une chose, un prêt est un événement : les deux ne vivent pas au même endroit.
Pourquoi mes formules ne fonctionnent-elles pas avec des virgules?
Parce que le séparateur d'arguments dépend de la langue de votre Excel. En français, c'est le point-virgule. En anglais, c'est la virgule, et les noms de fonctions changent aussi : SI devient IF, RECHERCHEV devient VLOOKUP, AUJOURDHUI devient TODAY. Les formules de cet article sont écrites pour un Excel en français.
La mise en forme conditionnelle ne colore qu'une cellule au lieu de la ligne entière. Pourquoi?
Il manque presque toujours le signe de dollar devant la lettre de colonne. La formule doit s'écrire avec la colonne figée et la ligne libre, par exemple avec un dollar devant le I de la colonne de retour réel mais rien devant le 2. Sans ce dollar, chaque colonne teste sa propre valeur au lieu de tester la colonne de référence.
Combien de livres un tableur peut-il suivre avant de devenir pénible?
Notre estimation, d'après ce que nous voyons chez les organismes qui nous écrivent : le modèle tient bien jusqu'à quelques centaines de titres avec une seule personne aux commandes. Ce n'est pas le nombre de lignes qui pose problème, Excel en avale des millions. Ce sont le nombre de personnes qui y touchent et le nombre de membres qui voudraient consulter la collection.
Peut-on envoyer le fichier Excel aux membres pour qu'iels voient la collection?
C'est le réflexe naturel, et c'est le point où le modèle échoue le plus vite. Le fichier contient la feuille des membres (noms, courriels, téléphones) et l'historique de qui a emprunté quoi. Le diffuser expose des renseignements personnels. Fabriquer chaque mois une copie expurgée est un travail manuel qui sera abandonné au troisième mois.
Ce modèle fonctionne-t-il dans Google Sheets ou LibreOffice?
La structure, oui, telle quelle. Les formules aussi, à deux détails près : Google Sheets utilise la virgule comme séparateur si votre document est en anglais, et les guillemets doubles doivent être des guillemets droits. La mise en forme conditionnelle par formule existe dans les trois logiciels, au même endroit du menu ou presque.