Date: prev next · Thread: first prev next last
2019 Archives by date, by thread · List index


Re bonsoir

Voilà un exemple vite fait du code la fonction en Basic

/Function test(v1,v2)//
//' V1 serait D10 : forcément soit vide, soit une heure//
//' V2 serait E10 : forcément du texte//
//
//' UTILISATION : se mettre dans la cellule où l'on veut le résultat et taper =TEST(coordonnée de la cellule de type D10; coordonnée de la cellule du type E10)//
//' si l'on utilise vraiment D10 et E10, ça donne =TEST(D10;E10)//
//
//' =SI(D10="";"";SI(E10="";D10;SI(E10="12 B";D10-"0:32";SI(E10="11 B";D10-"1:04";SI(E10="10 B";D10-"1:36";SI(E10="9 B";D10-"2:08";SI(E10="8 B";D10-"2:40";SI(E10="7 B";D10-"3:12";"")))))))) //
//
//Dim res As Date  ' res : variable intermédiaire pour savoir si le résultat est négatif ou non//
//
//v2=ucase(v2) ' forcer le passage en majuscules//
//
//If v1="" Then//
//    test=""//
//Else//
//    h=v1//
//    Select Case v2://
//        Case ""//
//            res=h//
//        Case "12 B"//
//            res = h - timevalue("00:32:00")//
//        Case "11 B"//
//            res = h - timevalue("01:04:00")//
//        Case "10 B"//
//            res = h - timevalue("01:36:00")//
//        Case "9 B"//
//            res = h - timevalue("02:08:00")//
//        Case "8 B"//
//            res = h - timevalue("02:40:00")//
//        Case "7 B"//
//            res = h - timevalue("03:12:00")//
//        Case Else//
//            Msgbox "Y'a un problème ! dans la valeur  de 'E10' !"//
//    End Select//
//    If res<0 Then//
//        test=timevalue("00:00")//
//    Else//
//        test=res//
//    endif//
//End If//
//End Function/

Le mode d'emploi est indiqué au début. il faut rentrer quelque chose comme =Test(D10;E10) dans la cellule voulue

Bon amusement

Christian F

Le 28/03/2019 à 14:03, FRED55 a écrit :
=SI(D10="";"";SI(E10="";D10;SI(E10="12 B";D10-"0:32";SI(E10="11
B";D10-"1:04";SI(E10="10 B";D10-"1:36";SI(E10="9 B";D10-"2:08";SI(E10="8
B";D10-"2:40";SI(E10="7 B";D10-"3:12";""))))))))

est ma formule de base,mais si j'ai D10 égal à 1:38 et que par exemple
E10=8B ce qui donne 1:38-3:12 cela m'affiche un volume horaire négatif et je
voudrais dans ce cas par exemple avoir un résultat affiché de 0:00 ne tenant
pas compte du négatif.
Il s'agit d'un système de crédit débit de temps



--
Sent from: http://document-foundation-mail-archive.969070.n3.nabble.com/Users-f1744091.html



--
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à https://listarchives.libreoffice.org/fr/users/
Privacy Policy: https://www.documentfoundation.org/privacy

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.