Comment attribuer la valeur 0 à du texte dans une formule ?

0

Bonjour,

J'essaie de créer un tableau de suivi du temps de travail des salariés, mais parfois au lieu du nombre d'heures quotidiennes, il sera indiqué "CP" ou "AM" par exemple.

Cela perturbe la formule de calcul du total des heures sup de la semaine.

Comment puis-je faire pour que les valeurs "texte" qui serons noté dans le tableau ne soit pas prisses en compte par la formule (comme lors d'une simple SOMME)

Ma formule actuelle pour la colonne totale des HSup à 25%:

=SI.CONDITIONS((((AG6-'Valeurs sociétés'!$B$3)+(Janvier!AH6-'Valeurs sociétés'!$B$4)+(Janvier!AI6-'Valeurs sociétés'!$B$5)+(Janvier!AJ6-'Valeurs sociétés'!$B$6)+(Janvier!AK6-'Valeurs sociétés'!$B$7)-AN6))>8;8;(((AG6-'Valeurs sociétés'!$B$3)+(Janvier!AH6-'Valeurs sociétés'!$B$4)+(Janvier!AI6-'Valeurs sociétés'!$B$5)+(Janvier!AJ6-'Valeurs sociétés'!$B$6)+(Janvier!AK6-'Valeurs sociétés'!$B$7))-AN6)<=0;0;(((AG6-'Valeurs sociétés'!$B$3)+(Janvier!AH6-'Valeurs sociétés'!$B$4)+(Janvier!AI6-'Valeurs sociétés'!$B$5)+(Janvier!AJ6-'Valeurs sociétés'!$B$6)+(Janvier!AK6-'Valeurs sociétés'!$B$7))-AN6)*0<>8;((AG6-'Valeurs sociétés'!$B$3)+(Janvier!AH6-'Valeurs sociétés'!$B$4)+(Janvier!AI6-'Valeurs sociétés'!$B$5)+(Janvier!AJ6-'Valeurs sociétés'!$B$6)+(Janvier!AK6-'Valeurs sociétés'!$B$7))-AN6)

    Posté le 15 juillet, 16:03
    par Nad
    Répondre
    0

    Bonjour Nad,

    « mais parfois au lieu du nombre d'heures quotidiennes, il sera indiqué "CP" ou "AM"
    par exemple. » : un texte comme "CP" ou "AM" a la valeur 0.

    « ne soit pas prises en compte par la formule (comme lors d'une simple SOMME) » :
    la fonction SOMME() ignore les valeurs texte ➯ y'a aucun problème : ça marche
    sans retourner de message d'erreur.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    il y a peut-être un problème de parenthèse mal placée, car :

    * « $B$7)-AN6)) » : 1 parenthèse après $B$7 et 2 parenthèses après AN6

    * « $B$7))-AN6) » : 2 parenthèses après $B$7 et 1 parenthèse après AN6

    ta formule est très longue ; je n'ai pas envie de la vérifier, surtout sans
    fichier Excel joint.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    dans ta longue formule actuelle, il y a ces 3 conditions :

    1) condition n° 1 : « >8 » : ok ; et si >8 alors 8 ➯ maximum : 8.

    2) condition n° 2 : « <=0 » : ok ; et si <=0 alors 0 ➯ minimum : 0 ;
    noter que là, on peut simplifier en « <0 », car si c'est égal à 0 :
    on laisse 0 tel quel.

    3) condition n° 3 : « <>8 » : ok ; mais regarde ce qu'il y a juste à gauche de
    « <>8 » : « ))-AN6)*0 » : pourquoi ce « *0 » ? d'après moi, c'est une erreur,
    d'autant plus que multiplier par 0 donne 0 ! il me semble que c'est cela qui
    perturbe la formule ; donc supprime le « *0 » ➯ « ))-AN6) » et regarde
    si ça a arrangé ton problème.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    y'aurait probablement moyen de simplifier ta longue formule, dans ce sens :

    1) si >8 : maximum : 8
    2) si <0 : minimum : 0

    3) si <>8 :
        a) si >8 : c'est la 1ère condition de 1) ➯ 8
        b) si <8 :
            * si entre 0 inclus et 8 exclu : [0, 8[ : c'est la dernière partie
              de la longue formule qui va être appliquée.
            * si <0 : c'est la 2ème condition de 2) ➯ 0

     de toute façon, je propose de simplifier comme indiqué ci-après.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    * dans une cellule, par exemple D5 :

    =MAX((AG6-'Valeurs sociétés'!$B$3)+(Janvier!AH6-'Valeurs sociétés'!$B$4)
    +(Janvier!AI6-'Valeurs sociétés'!$B$5)+(Janvier!AJ6-'Valeurs sociétés'!$B$6)
    +(Janvier!AK6-'Valeurs sociétés'!$B$7)-AN6);0)

    * dans une autre cellule, par exemple D6 : =MIN(D5;8)

    le résultat que tu attends doit être celui de D6.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    OU dans une seule cellule, par exemple D5 :

    =MIN(MAX((AG6-'Valeurs sociétés'!$B$3)+(Janvier!AH6-'Valeurs sociétés'!$B$4)
    +(Janvier!AI6-'Valeurs sociétés'!$B$5)+(Janvier!AJ6-'Valeurs sociétés'!$B$6)
    +(Janvier!AK6-'Valeurs sociétés'!$B$7)-AN6);0);8)

    le résultat que tu attends doit être celui de D5.

    rhodo

    rhodo Posté le 15 juillet, 19:32
    par rhodo

    Si vous n'êtes pas inscrit sur le site, vous pouvez poster librement (en tant qu'invité).
    Pour cela, indiquez un pseudonyme (nom d'utilisateur) et une adresse email :