Compter mots sans répétition - VB/VBA/VBS - Programmation
Marsh Posté le 09-07-2009 à 10:15:25
Si je ne me trompe pas, il y a une fonction Excel qui fait cela tout seul pour les nombres ("FREQUENCE" ).
Tu peux aussi utiliser la fonction Excel NB.SI(zone;"Pomme" ) qui te donne automatiquement le nombre de cellules qui contiennent "Pomme"
Marsh Posté le 08-07-2009 à 16:19:01
Bonjour à tous,
Voilà, j'aurai besoin d'un coup de main afin de perfectionner une macro.
En effet, j'ai une liste qui contient plusieurs terme
exple:
pomme
pomme
banane
poire
banane
pomme
orange
poire
poire
banane
Comme vous pouvez le voir cette liste comporte plusieurs fois certains termes, comme "pomme"
J'utilise donc une macro afin de compter chacun de ces termes
Sub Test()
For x = 16 To 30
a = Cells(x, 2)
'If Cells(x, 1) = "type" Then
'GoTo retour
'Else
y = y + (a & " * " & Application.WorksheetFunction.CountIf(Range("B16:B30" ), a)) & Chr(13)
'End If
'retour:
Next
MsgBox (y)
End Sub
Cependant il va me répéter à chaque fois qu'il y a 3*pomme à chaque mots "pomme" et ainsi pour chacun des fruits du genre:
pomme * 3
pomme * 3
banane * 3
poire * 3
banane * 3
pomme * 3
orange * 1
poire * 3
poire * 3
banane * 3
La question est donc: est-il possible d'éviter de lui faire faire des répétitions inutiles?
Merci de votre aide, et je continue à chercher dans mon coin
I folima Elda
Message édité par I folima Elda le 08-07-2009 à 16:51:06