Comment soustraire sur Excel des dates, heures et pourcentages ?

Soustraire sur Excel ne se résume pas à taper un signe moins entre deux cellules. Selon le type de données – dates, heures ou pourcentages – Excel applique des règles de calcul différentes, et un résultat inattendu vient souvent du format d’affichage ou du type de cellule, pas de la formule elle-même. Voici comment traiter chaque cas sans perdre de temps à chercher l’erreur au mauvais endroit.

Soustraire deux dates et calculer la différence en jours, mois ou années

Le cas le plus fréquent : on dispose d’une date de début en A1 et d’une date de fin en B1, et on veut l’écart. La formule =B1-A1 suffit pour obtenir un nombre de jours, à condition que les deux cellules soient bien reconnues comme des dates par Excel.

A lire aussi : Comment relier Access et Excel ?

Si le résultat affiche une date au lieu d’un nombre, le format de la cellule résultat est en cause. Il faut le passer en « Nombre » ou « Standard » via le menu Format de cellule (Ctrl+1).

Pour des écarts en mois ou en années, la fonction DATEDIF reste la plus adaptée :

A lire en complément : Comment faire recherchev en Excel ?

  • =DATEDIF(A1;B1;"D") retourne la différence en jours entiers entre les deux dates.
  • =DATEDIF(A1;B1;"M") retourne le nombre de mois complets écoulés.
  • =DATEDIF(A1;B1;"Y") retourne le nombre d’années complètes, utile pour calculer un âge ou une ancienneté.

DATEDIF n’apparaît pas dans la liste d’autocomplétion d’Excel, mais elle fonctionne dans toutes les versions courantes. L’argument de durée s’écrit entre guillemets et respecte la casse.

Soustraction d’heures et piège du format modulo 24

Calculer un temps de travail ou une durée entre deux horaires se fait avec la même logique : =B1-A1, où B1 est l’heure de fin et A1 l’heure de début. Le problème survient quand la durée cumulée dépasse 24 heures.

Excel stocke les heures comme des fractions de journée. Un format standard h:mm affiche alors le résultat « modulo 24 » : une durée réelle de 28 h 15 apparaît comme 4:15, ce qui ressemble à une erreur mais n’en est pas une. Le calcul est juste, seul l’affichage est trompeur.

Pour afficher la durée totale réelle, il faut appliquer un format personnalisé [h]:mm à la cellule résultat. Les crochets autour du « h » indiquent à Excel de ne pas remettre le compteur à zéro au-delà de 24 heures. On accède à ce format via Ctrl+1, onglet « Nombre », catégorie « Personnalisée ».

Microsoft précise que dans Excel pour le web, on peut calculer des durées supérieures à 24 heures, mais il n’est pas possible d’y appliquer un format numérique personnalisé. Si une durée paraît tronquée dans la version navigateur, c’est cette limite qui en est la cause, pas la formule.

Homme en bureau d'entreprise analysant des formules de soustraction d'heures et de pourcentages dans Microsoft Excel sur double écran

Soustraire un pourcentage d’un montant dans Excel

Il n’existe pas de fonction dédiée à la soustraction dans Excel, et aucune fonction SUBTRACT n’est disponible. On utilise directement l’opérateur moins avec une formule explicite.

Pour retrancher 15 % d’une valeur en A1, on écrit =A1-A1*15% ou de façon équivalente =A1*(1-15%). Si le pourcentage est lui-même stocké dans une cellule B1 au format pourcentage, la formule devient =A1-A1*B1.

Un point à ne pas confondre : soustraire un pourcentage et soustraire une valeur affichée en pourcentage sont deux opérations différentes. Si B1 contient 0,15 affiché comme « 15 % », la formule =A1-B1 soustrait 0,15, pas 15. Le format d’affichage ne change pas la valeur stockée dans la cellule.

Quand la formule semble correcte mais le résultat est faux

L’erreur #VALEUR! sur une soustraction de dates ou d’heures signale presque toujours que l’une des cellules contient du texte, pas une valeur numérique. Excel stocke les dates et les heures comme des numéros de série internes : si une date a été saisie dans un format non reconnu ou importée depuis un autre système, elle reste du texte et ne peut pas être soustraite.

Pour vérifier rapidement le type d’une cellule, on peut utiliser la fonction =ESTNUM(A1) : si elle retourne FAUX pour une cellule qui semble contenir une date, le contenu est bien du texte. Vérifier le type des cellules avant de modifier la formule évite de chercher au mauvais endroit.

Quelques situations concrètes où le type de données trompe :

  • Une date importée d’un CSV avec un séparateur de date non reconnu par la version locale d’Excel (point au lieu de slash, par exemple) reste en texte.
  • Une heure saisie avec une virgule au lieu de deux-points ne sera pas reconnue comme valeur horaire.
  • Une cellule préformatée en « Texte » avant la saisie conserve son contenu comme texte, même si on y tape une date valide.

Dans ces cas, le plus simple est de convertir la colonne via Données > Convertir, ou d’utiliser DATEVAL et TEMPSVAL pour forcer la conversion en valeur numérique exploitable.

Soustraction sur une plage de cellules sans formule répétée

Quand on doit soustraire une même valeur fixe de toute une colonne, réécrire la formule ligne par ligne n’est pas la seule option. La méthode avec Collage spécial permet de le faire sans colonne intermédiaire :

On saisit la valeur à soustraire dans une cellule vide, on la copie, on sélectionne la plage cible, puis Collage spécial (Ctrl+Alt+V) > Opération : Soustraction. Excel modifie les valeurs en place, sans formule visible dans les cellules.

Cette méthode modifie les données source de façon définitive. Elle convient uniquement si on travaille sur une copie ou si les valeurs originales ne sont plus nécessaires. Pour garder les données intactes, une colonne avec formule reste préférable.

La soustraction dans Excel repose donc sur un seul opérateur, mais son résultat dépend directement du type et du format des cellules impliquées. Avant de retravailler une formule qui semble fausse, vérifier que les données sont bien reconnues comme des nombres, des dates ou des heures – et pas comme du texte – résout la majorité des problèmes rencontrés en pratique.

Ne ratez rien de l'actu