Libre office si

Bonjour
Dans la cellule A1 j'ai la date de naissance
Dans la cellule B1 J'ai l'âge avec la formule suivante :
=DATEDIF(a1;AUJOURDHUI();"y")&" , "&DATEDIF(a1;AUJOURDHUI();"Ym")
Dans la cellule C1 je voudrais trouver la formule a la réponse suivante :
Si dans B1 > à 16 ans alors 30 heures, sinon 25 heures
Merci beaucoup d"avance car j'ai déjà fait une multitude d'essais et cela ne fonctionne pas

3 réponses

  1. Bonjour le fil,

    ou encore comme cela
    =SI(A1="";"";SI(DATEDIF(A1;AUJOURDHUI();"y")>=16;30;25)) 


    en B1 une conditionnelle en tête pour éviter un affichage erroné dans le cas de cellule vide
    =SI(A1="";"";DATEDIF(A1;AUJOURDHUI();"y")&" , "&DATEDIF(A1;AUJOURDHUI();"Ym"))

    ou plus technique avec la gestions du singulier et pluriel
    =SI(A1="";"";SI(DATEDIF(A1;AUJOURDHUI();"y")>0;DATEDIF(A1;AUJOURDHUI();"y")&SI(DATEDIF(A1;AUJOURDHUI();"y")>1;" ans ";" an ");"")&SI(DATEDIF(A1;AUJOURDHUI();"ym")>0;DATEDIF(A1;AUJOURDHUI();"ym")&" mois "))
    0
    1. Bonjour,

      Comme le dit Raymond (salutations) le résultat de ta formule donne un texte.

      Tu as le choix ; soit transformer ce texte en nombre avec CNUM() et en supprimant les espaces avant et après la "," ; et là tu pourras utiliser la cellule B1 ;

      =CNUM(DATEDIF(A1;AUJOURDHUI();"y")&","&DATEDIF(A1;AUJOURDHUI();"Ym"))


      pour utiliser le résultat pour ton calcul de la cellule C1 ;

      =SI(B1<>"";SI(B1>16;30;25);"")


      où d'utiliser le nombre de mois en A1 pour faire directement le calcul pour C1

      =SI(A1<>"";SI(DATEDIF(A1;AUJOURDHUI();"m")>192;30;25);"")


      192 correspond à 16 x 12.

      Cordialement
      0
      1. Contributeur
        Bonjour.

        Tu ne risques pas de trouver grand chose !
        Supposons que A1 contienne la date de naissance 20/05/1960
        =DATEDIF(A1;AUJOURDHUI();"y") est une formule qui donne comme résultat le nombre 61
        =DATEDIF(A1;AUJOURDHUI();"Ym") est une formule qui donne comme résultat le nombre 1
        =DATEDIF(a1;AUJOURDHUI();"y")&" , "&DATEDIF(a1;AUJOURDHUI();"Ym") est une formule qui colle 3 textes séparés par & ; le résultat est aussi un texte "61°,°1" (mes ° représentent des espaces) ; ce texte ne peut en aucune manière te servir à faire des comparaisons avec le nombre 16 !
        0