Nombre de premiers symboles de cellules

Bonjour à tous,

Je recherche une formule qui pourrait me permettre de comptabiliser le nombre de fois que ressort une combinaison de lettre parmi les 2 premiers "espaces" ou symboles que compte chaques cellules en partant de la Gauche.

Exemple : Si mes codes recherchés sont AB, CD et EF

Je veux savoir combien de fois je retrouve AB, CD ou EF en tant que 2 premières lettres dans une colonne de donnée.

ABCDEF

abUIPM

CDJLOÖ

JHILMP

EFCDAB

Là je voudrais retrouver :

AB = 2

CD = 1

EF = 1

Paramètre important : le fait que les lettres soient en majuscules ou minuscules doit être indifférent.

Est ce possible à votre avis?

J'ai mis un exemple plus précis de ce que je recherche en pièce jointe

Je vous remercie par avance.

P.S : je sais comment intégrer des marcos. Mais je ne sais pas les programmer. Un code à recopier me va très bien.

Bonjour,

je te propose le code suivant à tester :

Sub test()

Dim ligneMax As Integer

Dim mot As String

nbM = 0

nbME = 0

nbS = 0

nbB = 0

ligneMax = Range("B" & Rows.Count).End(xlUp).Row

For i = 1 To ligneMax 'de la 1er ligne jusqu'au dernier ligne non null

mot = UCase(Left(Cells(i, 2).Value, 2)) ' mettre tout en majuscule pour éviter la casse

If mot Like "M*" Then

nbM = nbM + 1

End If

If mot Like "ME" Then

nbME = nbME + 1

End If

If mot Like "S*" Then

nbS = nbS + 1

End If

If mot Like "B*" Then

nbB = nbB + 1

End If

Next i

'affecter les valeurs au cellule

End Sub

Je me trompe où je dois entrer les cellules direct dans le module vba?

Ça verrouille le calcul du coup. je ne pourrais pas le combiner à autre chose comme des couleurs ou autre calcul et je serais obligé de refaire un module pour chaque nouvelle recherche...?

L'idéal serai carrément d'avoir une formule où je peux faire varier les zones de données.

Je réutiliserai la formule pour différents tableaux après.

Où je peux mettre à partir de ma feuille de calcul, le résultat je le veux sur telle cellule, avec des données allant de là à là... Par exemple...

Possible ou pas?

Merci bien

Bonjour,

en E3 :

=NB.SI(B$3:B$8;GAUCHE(D3;TROUVE(" ";D3))&"*")

@ tirer vers le bas

@ + +

en vba on peut initier des paramètre avec exemple :"Inputbox" pour varier les zones,

une fois la macro effectuer il suffit de l'associer a un raccourci (exemple : ctrl + n).

les cellules sont a rentrer directement dans le module vba ou avec l'utilisation des "inputBox",

pour combiner avec autre chose il suffit de modifier un peu le code vba.

Et bien ça n'a pas l'air mal du tout!!!

Je ne connaissais pas cette utilisation de NB.SI

Est ce que tu peux m'expliquer rapidement à quoi sert la terminaison de la formule: &"*")

Je vois bien que sans ça, rien ne marche, mais je n'en comprend pas le fonctionnement

Je te remercie


R@chid a écrit :

Bonjour,

en E3 :

=NB.SI(B$3:B$8;GAUCHE(D3;TROUVE(" ";D3))&"*")

@ tirer vers le bas

@ + +

Bonjour j.bart,

Ceci te convient ?

8jbart.xlsm (18.64 Ko)

& : concatenation

"*" : n'importe quels symbole (lettre, chiffre , vide ...si je ne me trompe pas)

Bonjour,

Mettre pour les symboles à rechercher : m/, me, s/, b/ (/ est visible, les espaces ne le sont pas...)

En K3, je mets donc : m/

En L3, la formule :

=SOMMEPROD(--(SUBSTITUE(GAUCHE($B$3:$B$8;2);" ";"/")=K3))

qui me renvoie : 2 (résultat recherché)

Si en K4, j'ai mis : me, en K5 : s/, et en K6 : b/

je tire la formule sur L4, L5 et L6, et j'obtiendrai successivement : 2, 1, 1.

Cordialement.

Rechercher des sujets similaires à "nombre premiers symboles"