Compteur sous OpenOffice 1.1.4

Résolu/Fermé
Arno59 Messages postés 4600 Date d'inscription jeudi 23 octobre 2003 Statut Contributeur Dernière intervention 18 avril 2023 - 16 juil. 2005 à 13:49
Arno59 Messages postés 4600 Date d'inscription jeudi 23 octobre 2003 Statut Contributeur Dernière intervention 18 avril 2023 - 20 juil. 2005 à 11:50
Bonjour,

Je souhaiterais totaliser le nb de chiffres sortants de 1 à 50:
ce tableau est réalisé sous le prog calc de OpenOffice

Boule 1 - Boule 2 - Boule 3 - Boule 4 - Boule 5

01 11 12 23 42
35 36 42 46 49
04 05 23 25 28
06 08 14 15 45
04 08 10 18 21
06 07 32 37 47
03 08 11 17 50
02 24 31 48 50
06 07 13 28 47
12 17 31 32 40
07 12 21 26 44
03 09 35 39 42
03 10 13 24 47
06 28 31 38 42
07 11 25 31 50

Sélection de colonne, chiffre de 1 à 50 puis les afficher des un endroit.
Comment Créer un compteur ?
A voir également:

5 réponses

lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
19 juil. 2005 à 20:12
Re,

Tu n'as pas vraiment besoin d'un module OOoBasic.
Tu peux tu simplement utilisé la fonction NB.SI.

dans une cellule tu écrit
=NB.SI(A2:E16;"17")
si le format de cellules et texte


ou
=NB.SI(A2:E16;17)

si le format et nombre, mais dans ce cas tu dois utiliser un format personnalisé pour avoir 01 dans une cellule, à toi de voir

La plage A2:E16 tu doit la remplacée avec ta plage.
4
Arno59 Messages postés 4600 Date d'inscription jeudi 23 octobre 2003 Statut Contributeur Dernière intervention 18 avril 2023 484
18 juil. 2005 à 17:01
Bonjour,

Y-a-t-il quelqu'un qui aurait la résolution de ce problème ?
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
18 juil. 2005 à 19:01
Salut,

donc tu as 5 colonnes et x lignes

Fait un truc de genre.
nb=0
For r=1 to x 'admettons que les chiffres commencent à la ligne 2 (le 1er index c'est 0)
   For c=0 to 4 (on commence à la colonne 1, l'index 0)
     if getCellByPosition(r,c).value=17 then
       nb=nb+1 'on compte le numéro 17
     end if
   Next c
Next r

Msgbox nb
0
Arno59 Messages postés 4600 Date d'inscription jeudi 23 octobre 2003 Statut Contributeur Dernière intervention 18 avril 2023 484
19 juil. 2005 à 15:53
Merci de ton aide,

Ou copier cet algo ?
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
19 juil. 2005 à 19:35
Salut,

Tu ouvres ton fichier (le module fonctionne si tu commence à la ligne 2 et tu n'as que 5 colonnes et 15 lignes - à toi de modifier les valeurs si t'en as plusieures lignes et colonnes.

1. Pour inserer le code tu vas dans Outils/Macros/Macro

2. Tu verras une boîte de dialog qui s'ouvre.

3. Dans la zone Nom de la macro tu donnes un nom à ta macro.

4. Après dans l'arborescence que tu vois à gauche tu verras ton fichier (s'il n'as pas encore un nom - donc il n'est pas enregisré - tu verras Sans nom1).

4.1 Tu sélectionnes(un clic sur lui) ton fichier.

5. Tu fait clic sur le bouton Nouveau que tu vois à droite.

6. Il s'ouvrira un fenêtre dans laquelle tu verras ta macro que tu as crée
Sub ta_macro

End Sub

7. A l'intérieur tu vas copier le code que tu vois plus bas.

8. Pour l'éxécuter tu doit faire clic sur la 2ème icône en partant de gauche (elle a une fléche orientée vers le bas). De toute façon si tu tient un peut le pointeur de la souris tu verras l'infobulle "Exécuter"


	Dim myCalc As Object, mySheets As Object
	Dim mySheet As Object

	myCalc=thisComponent
	mySheets=mycalc.Sheets
	mySheet=mySheets.getByName("Feuille1") 
	
	nb=0
	For x=0 to 4 'les colonnes
   	    For y=0 to 14 'les lignes
     		 If mysheet.getCellByPosition(x,y).string=17 then
       		      nb=nb+1 'on compte le numéro 17       
     		  End If
   	    Next y   
	Next x
	msgbox "Le numéro 17 est sortie " & nb & " fois."
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Arno59 Messages postés 4600 Date d'inscription jeudi 23 octobre 2003 Statut Contributeur Dernière intervention 18 avril 2023 484
20 juil. 2005 à 11:50
Bonjour,

Merci pour les 2 fonctions, elles fonctionnent correctement.

Mon problème est résolu, j'ai choisi la méthode :

=NB.SI(A2:E16;"17")

Et encore merci
0