Oocalc
castouste
-
kastouste -
kastouste -
Bonjour,
Je souhaiterais savoir dans oocalc comment réaliser l'operation suivante :
parcourir toute une colonne et incrémenter un compteur si une valeur (stockée dans un autre cellue) correspond.
Je fais : IF(B1=A1:A100; C1=C1+1) qui me renvoie #NOM.
Merci pour votre aide.
Je souhaiterais savoir dans oocalc comment réaliser l'operation suivante :
parcourir toute une colonne et incrémenter un compteur si une valeur (stockée dans un autre cellue) correspond.
Je fais : IF(B1=A1:A100; C1=C1+1) qui me renvoie #NOM.
Merci pour votre aide.
2 réponses
Salut castouste,
En fait tu veut savoir combien de B1 tu trouve dans la plage A1:A100
et le résultat tu veut l'afficher dans C1.
Avec ton IF tu ne fait pas grand chose puisque le contenu d'une cellule
ne peut pas être egal avec le contenu d'une plage.
Donc ou t'utilise la formule
dans C1 tu écrit =NB.SI(A1:A100;B1)
ou tu peut utiliser un macro OOoBasic
une boucle For fait l'affaire
Sub compteur()
Dim classeur as Object
Dim lesfeuilles as Object
Dim feuille as Object
Dim cell as Object
classeur = thisComponent
lesfeuilles = classeur.Sheets
feuille = lesfeuilles.getByName("a") ' a c'est le nom de la feuille
Dim r as Long
Dim n as Long
n=0
for r=1 to 100
if feuille.getCellByPosition(0,r-1).Value = feuille.getCellByPosition(1,0).Value then
n=n+1
feuille.getCellByPosition(2,0).Value = n
end if
next r
End sub
En fait tu veut savoir combien de B1 tu trouve dans la plage A1:A100
et le résultat tu veut l'afficher dans C1.
Avec ton IF tu ne fait pas grand chose puisque le contenu d'une cellule
ne peut pas être egal avec le contenu d'une plage.
Donc ou t'utilise la formule
dans C1 tu écrit =NB.SI(A1:A100;B1)
ou tu peut utiliser un macro OOoBasic
une boucle For fait l'affaire
Sub compteur()
Dim classeur as Object
Dim lesfeuilles as Object
Dim feuille as Object
Dim cell as Object
classeur = thisComponent
lesfeuilles = classeur.Sheets
feuille = lesfeuilles.getByName("a") ' a c'est le nom de la feuille
Dim r as Long
Dim n as Long
n=0
for r=1 to 100
if feuille.getCellByPosition(0,r-1).Value = feuille.getCellByPosition(1,0).Value then
n=n+1
feuille.getCellByPosition(2,0).Value = n
end if
next r
End sub