XL pour MAC Base de données rentrée en binaire : exploitation utile et rapide

capmurdock

XLDnaute Nouveau
Bonjour,

Je viens de passer quelque temps à remplir une volumineuse base de données en 0 et en 1 (Y = Yes, N = No)

La base se présente ainsi en modèle réduit (à titre d'exemple).
Capture d’écran 2020-04-15 à 17.19.38.png


Je cherche la façon la plus astucieuse pour l'exploiter et en tirer le maximum d'informations sous forme de tableau récapitulatifs analytiques sachant que je bute sur les tableaux croisés dynamiques du fait du remplissage en 0 et en 1.

Des conseils ?

Merci
 

micheldu52

XLDnaute Occasionnel
Bonjour,
Tu peux utiliser le fait que 0 soit absorbant en multiplication : tu sélectionnes les colonnes qui sont probantes, tu les multiplies si le résultat est 0, l'un au moins des critères n'est pas rempli à 1, sinon cela satisfait à tous les tests et le résultat est un.
un sommprod peux le faire si tu disposes tes critères sur une ligne dédiée.
Sinon précises les critères si ce n'est pas "tous doivent être à un pour telle recherche"
Cordialement,
Michel
 

jmfmarques

XLDnaute Accro
Bonjour
Difficile de te conseiller utilement sans même savoir quelles requêtes t'intéresseront.
Je vais à ce stade me contenter :
- d'appeler ton attention sur la terminologie : ne pas confondre données binaires et données numériques (y compris du type le plus bas) sera bien
- je ne sais pas (bis repetita) comment et à quoi tu as l'intention d'utiliser ces données, mais il n'est pas impossible que tu trouves un intérêt à les utiliser dans une progression telle la progression :
1,2,4,8,16,32,64, etc ...
qui te permettrait de déterminer d'entrée de jeu les valeurs des composantes du nombre résultant.
ainsi (exemple) :
TOTO = 2 Or 4 Or 1
fait que toto ne peut qu'être la somme 1 + 4 + 2 (ici 7) et non la somme, par exemple, de 2 + 5

Disons-le maintenant autrement : si toto = 7, ce 7 ne peut qu'être la somme de la variable de valeur 1, de celle de valeur 2 et de celle de valeur 4 (valeurs prises dans l'array (1,2,4,8,16,32, 64,128)
 
Dernière édition:

capmurdock

XLDnaute Nouveau
Bonsoir,

En effet ma requête était incomplète.

Le but de cette base est d'obtenir un tableau sous format

Guéris Non guéris

Âge
Sexe
IMC
Diabétique
....

Avec de nombreuses lignes.

Mon problème est le suivant, j'essaie à l'aide d'un tableau croisé dynamique d'établir ce tableau afin de gagner en temps et en efficacité.
Néanmoins, je ne parviens pas à partir de la colonne mère "guéris" :
- d'une part à le mettre sous format de colonne "guéris" "non guéris"
- d'autre part à renseigner les caractéristiques correspondant à chaque colonne tel qu'afficher.

La demande peut paraître vague du coup pour me recentrer :
1) Pensez vous que le tableau croisé dynamique est vraiment l'outil utile ?
2) Dois je m'orienter d'une autre façon ? Le but étant de vouloir gagner du temps et de pouvoir utiliser les avantages d'excellente. Peut être cela passe par une formation adéquate d'excel, si vous avez des tutos avancés en mémoire, je suis preneur.

En vous remerciant.
 

micheldu52

XLDnaute Occasionnel
Bonsoir,
A priori TCD pas adapté....
Peux-tu préciser comment (informatiquement) on détermine guéris/pas guéris (quels critères doivent être a 0 ou 1 dans chaque cas?)
Peux-tu donner un exemple (fais à la main) du résultat tel que tu le souhaites?
J'ai un peu de temps ce soir pour regarder le cas échéant
 

jmfmarques

XLDnaute Accro
Re
Je vois bien que ma suggestion (message 3) n'a déclenché aucune réaction et c'est peut-être dommage
Je vais essayer de faire un petit effort de plus pour provoquer le déclic salutaire (utilisation des opérateurs logiques en comparaisons au niveau du bit)

Regardons ce que fait ceci (en exemple) :
VB:
Private Const homme = 1, femme = 2, diabete = 4, medic = 8, chirurgie = 16, gueri = 32, recidive = 64
Private patient As Byte

Private Sub CommandButton1_Click()
   patient = femme Or medic Or chirurgie Or gueri
   MsgBox "ce patient est-il est-il gueri ? " & voyons(patient, gueri)
   MsgBox "ce patient a-t-il subi une chirurgie ? " & voyons(patient, chirurgie)
   MsgBox "ce patient est-il diabétique ? " & voyons(patient, diabete)
   MsgBox "ce patient est-il un homme ? " & voyons(patient, homme)
   MsgBox "ce patient est-il une femme ? " & voyons(patient, femme)
End Sub

Private Function voyons(patient As Byte, OBJ As Byte) As Boolean
  toto = patient And OBJ
  voyons = toto = OBJ
End Function

Que reste-t-il à faire, si l'on a compris ? --->> vraiment très peu et vraiment très simple : attribuer une valeur patient à chaque patient à partir d'un "x" présent ou absent dans chacune des colonnes "déterminantes".
Je m'écarte maintenant de cette discussion et laisse faire. :)
 

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Vous pouvez toujours vous faire un (des) tableau(x) secondaire(s), avec toutes les formules statistiques, de dénombrement et de sommage d'excel, ce serait déjà un départ.

Un tableau par tranche d'âge, tranche d'âge et par sexe, tranche d'âge et pathologie etc..
On peut imaginer beaucoup de choses. Du simple au compliqué .... mais il vous faut de tout façon définir votre besoin exact du moment, sachant qu'il peut évoluer.

Cordialement
 

Statistiques des forums

Discussions
312 174
Messages
2 085 951
Membres
103 058
dernier inscrit
florentLP