Coder les traitements automatiquement

Résolu
borisparis Messages postés 87 Statut Membre -  
gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je dispose d'une base de données contenant 1000 lignes. Chaque ligne correspond aux résultats d'un bilan de santé. Une colonne correspond aux traitements.

Mon problème est le suivant: les traitements sont les uns à la suite des autres et je souhaiterais faire 1 colonne pour chaque famille de médicament avec donc des 0 ou des 1 pour dire si le patient prend ou pas cette famille de médicament. Je dois donc coder les traitements automatquement.

En pratique

1) J'ai une liste de médicaments avec pour chacun son appartenance aux familles de médicaments (voir l'exemple avec le lien ci-dessous)

2) J'ai une colonne dans laquelle à chaque ligne il y a la liste des médicaments pris par une personne (lien ci-dessous)

3) J'ai des colonnes correspondant à chaque dans lesquelles on doit mettre des 0 ou des 1....(coder les traitements) et je n'ai sais pas comment faire

Voici l'illustration de cela ici: https://www.cjoint.com/c/EHvsglBVG0f

Quelqu'un a-t-il une macro pour faire cela ? Ça m'aiderait beaucoup....

PS: j'ai trouvé une solution indirecte avec la fonction de filtre d'excel mais c'est un peu compliqué..

4 réponses

  1. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonsoir

    Une possibilité avec une fonction personnalisée :
    http://www.cjoint.com/c/EHvu4oaY6mR

    Cdlmnt
    Via
    0
    1. borisparis Messages postés 87 Statut Membre 1
       
      Merci pour ta solution super efficace.
      Petite question supplémentaire
      j'aimerais que dans les médicaments je puisse mettre les noms partiels par exemple
      ken pour kenzen
      statine pour atorvastatine

      car il y a souvent des faites de frappes dans la saisie des données des patients.
      est-ce qu'il y a moyens ??

      Boris
      0
  2. Le Pingou Messages postés 12275 Date d'inscription   Statut Contributeur Dernière intervention   1 478
     
    Bonjour,
    Vous mettez une fois à la main les résultats sur la feuille [base de données des patients]... !
    Est-il possible de voir la solution indirecte ..... ?

    0
  3. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    Bonjour à tous,

    Une autre façon de gestion de fonction personnalisée :

    https://www.cjoint.com/c/EHvvwZJIUHK
    0
    1. borisparis Messages postés 87 Statut Membre 1
       
      merci pourcette super solution
      Une petique question toutefois
      quand je change la base de données des médicaments, ce n'est pas prise en compte quand je refait tourner la fonction..Je dois manquer une manip ?
      0
    2. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
       
      Bonjour,
      Pour gagner du temps de calcul, je pensais que ta base était stable mais voilà :

      https://www.cjoint.com/c/EHxhhckjncK
      0
      1. borisparis > gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Merci, c'est top !
        0
      2. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744 > borisparis
         
        Bonjour,

        Pour éviter les erreurs de saisie, une aide à la saisie avec choix et incrémentation des fonctions :

        https://www.cjoint.com/c/EHzi33deoQK
        0
  4. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Salut tout le monde,

    Oulalaaa, j'arrive bien tard moi.
    T'as tout bon boris. Bien expliqué avec un fichier, y'a du monde... :-)
    Proposition par macro, avec un bouton en L pour lancer la màj.
    Si un médicament est absent j'efface le résultat de la ligne et je met les médicaments absents en F.
    Par sécurité je recopie les familles de médicaments de la base des médicaments sur la base des clients.
    https://www.cjoint.com/c/EHvwfdCb6Eb

    eric

    En essayant continuellement, on finit par réussir.
    Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
    En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
    0
    1. borisparis Messages postés 87 Statut Membre 1
       
      Merci beaucoup! c'est une super macro
      toutefois, je vodrais qu'il ne traite que les médicaments qui sont dans la liste (et pas ceux qui n'y sont pas)
      Aute chose: comme il y a souvent des erreurs de saisie dans dans le fichier des patients, je voudrais mettre dans la liste des noms partiels du médicaments et qu'ils soient reconnus. par exemple: kenz pour kenzen (comme ca si c'eest kenzenne qui a étét saisi il est reconnu. As-tu une idée ? (la programmation c'est pas mon truc...pour le moment..)
      0
    2. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      Bonjour,

      modifs :
      - traite même si médicament absent
      - si médicament non trouvé et au moins 4 car. recherche et retient un médicament s'il commence ou fini par cette chaine.
      Comme presque tout y était je mets aussi en commentaire les médicaments trouvés et absents (à enlever si inutile).
      En majuscule : correspondance exacte trouvée, sinon en minuscule.
      https://www.cjoint.com/c/EHxlgcFvWvb

      eric

      PS: au-dessus gb a aussi modifié sa fonction
      0
      1. borisparis > eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Merci beaucoup, j'ai testé et c'est parfait !
        0