Bonjour
Au-dela de 3 valeurs, les solutions formules s'avérent improbales, j'ai donc utilisé une fonction personnalisée.
Les explications suivantes sont sur la feuille "Explications"
Sur ce tableau, en colonne A la liste des valeurs (de A2 à a500)
1) Définition de champs dynamiques (adaptables au nombre de données)
La formule
=DECALER(Feuil1!$A$2;;;NBVAL(Feuil1!$A:$A)-1)
est nommée Plage
(Commande de menu "Insertion" "Nom" Définir"
Dans "Nom dans le classeur:" taper Plage
Dans "Fait référence à:" entrer la formule)
Ici, cette formule représente le champ $A$2:$A$500
Si tu ajoutes une valeur en A501, la formule représentera le champ $A$2:$A$501
De sorte que tu n'auras plus à modifier les formules du tableau.
De la même façon, les données de la colonne B sont définies par Plage2
2) Fonction personnalisée VBA (Code Initial: Soft pour Excel-Pratique) dans le Module1
Function RechercheMultiples(ValeurCherchée As String, MatriceCherche, MatriceTrouve, Optional Seprator As String) As String
Dim c, i As Long
If Separator = "" Then Separator = " , "
For Each c In MatriceCherche
i = i + 1
If ValeurCherchée = c Then
If RechercheMultiples = "" Then
RechercheMultiples = MatriceTrouve(i)
Else
RechercheMultiples = RechercheMultiples & Separator & MatriceTrouve(i)
End If
End If
Next c
End Function
3) Les formules en Feuil1
Colonne B En B2 incrémentée vers le bas
="A"&LIGNE()
Si besoin, tu peux masquer cette colonne
Colonne C, en C2 incrémentée vers le bas
="La valeur est présente "&NB.SI(Plage;A2)&" fois, cellules "&RechercheMultiples(A2;Plage;Plage2;"")
Cordialement