Frank Thomas <[EMAIL PROTECTED]> a écrit :

Une matrice avec trois colonnes de données les cas se trouvant dans les lignes. Les valeurs peuvent aller de 1 à 3. Pour chaque cas il me faut le nombre de fois la valeur 1 a été sélectionnée.

Bonjour,

Il y a peut-être une méthode très simple avec des fonctionnalités que je ne connais pas, mais je peux te proposer une macro de ta composition. Je l'ai modifié pour correspondre à ton problème et testé, elle doit marcher.

Je me ne comprend pas la terminologie OOo.

Dans ce cas, je vais décrire ce que tu as à faire pour implémenter la macro pas à pas : - ouvre le document dans lequel tu as besoin de faire ton compter les fréquences,
- va dans le menu Outils > Macros > Gérer les macros > OpenOffice.org Basic,
- là une fenêtre s'ouvre où tu as deux zones blanches, à gauche, il y a une arborescence, avec normalement 'Mes Macros', 'Macros OpenOffice.org' et le tableur qui t'intéresse (si tu as plusieurs documents OOo ouverts, tu les verras tous là), - sélectionne le dossier 'Standard' qui se trouve dans l'arborescence de ton fichier, à droite, dans 'Macros existantes ..' sauf si tu as déjà utilisé des macros dans ton document, il devrait ne rien y avoir, - parmi les boutons de droite, clique sur 'Nouveau', mets le nom que tu veux (sans espace) dans la fenêtre qui s'ouvre alors (ou laisse le 'Module1' par défaut, il convient très bien :-) ) et clique sur OK, - une fenêtre OOoBasic s'est ouverte, où il devrait y avoir trois lignes, en-dessous de ces trois lignes, fais un copier-coller du code suivant :

Function Occurence(sRech as string, oZone as variant) as integer
  Dim n as integer
  Dim lCol as long, lLgn as long

  n = 0
  For lLgn = LBound(oZone) to UBound(oZone)
    For lCol = LBound(oZone, 2) to UBound(oZone, 2)
      If CStr(oZone(lLgn, lCol)) = sRech then
        n = n + 1
      End If
    Next lCol
  Next lLgn

  Occurence = n

End Function

- sauvegarde ce code, puis ferme la fenêtre Basic,
- tu as maintenant une nouvelle fonction de disponible : dans la case que tu veux près de ta matrice, écris : =OCCURENCE("1";'la zone correspondant à ta matrice') et tu devrais normalement obtenir le nombre de fois où est présent le "1" dans ta matrice,
- tu peux également utiliser cette fonction pour compter ce que tu veux.

En espérant avoir aidé, bon courage et bonne soirée,

--
Anthony Benoist

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to