Compter le nombre d'occurence
Bonjour à tous,
Je me tourne a nouveau vers vous pour un peu d'aide SVP.
J'ai en colonne A de ma feuille environ 3000 lignes en format personalisé 0000" "00" "000" "0000
Via un TextBox je souhaiterai compter dans toute la colonne A le nombre de fois ou la valeur de mon textbox existe mais uniquement dans les 4derniers chiffres de la cellule?
Je sais pas si je suis assez explicit ou non ? En fait je ne vois pas trop par ou commencer une fois que mon textbox est fait et que j'ai cliquer sur rechercher.
Je suppose quil faut dans un premier temps parcourir la colonne et compter si les 4 carcateres de droites sont egaux a ma chaine ?
Comment Auriez vous procédé SVP ?
Merci
Bonjour,
test ceci:
Sub recherche()
Dim recherche As String
Dim compteur As Integer
Dim i As Integer
Dim dercell as integer
recherche = InputBox("Chaîne recherchée ?")
Dercell = Range("A1").End(xlDown).Row
For i = 1 To Dercell
If Right(Range("A" & i).Value, 4) Like recherche Then
compteur = compteur + 1
End If
Next
MsgBox compteur
End Sub
Sans fichier joint j'espère que cela répond à ta question. A certainement améliorée.
Je te remercie pour ta réponse qui m'a bien aidé. Je cherche a poussé un peu plus loin donc avant de signé en resolu je complete ma demande si ca te gene pas
voici une partie de mon code
For i = 1 To dercell
'Si la recherche correspond au 4 dernier de la cellule en cours d'analyse
If Right(Range("A" & i).Value, 4) Like recherche Then
'on incremente le nombre de recherche
compteur = compteur + 1
Dim nnoComplet & compteur As String
Dim designation As String
Dim codeClassement As String
Dim encaissement As String
Dim codeOnu As String
Dim designationOnu As String
Dim topbouton As Integer
Dim leftbouton As Integer
Dim widthLabel As Integer
Dim bouton As Control
topbouton = 25
leftbouton = 200
nnoComplet = Range("A" & i).Value
designation = Range("B" & i).Value
Set bouton = UF_multiple_nno.Controls.Add("Forms.label.1", , True)
With bouton
.Caption = "label n°" & i & " designation: " & designation & " nnoComplet: " & nnoComplet
.Height = 20
.Width = 400
.Top = topbouton
.Left = leftbouton
.BorderStyle = 1
.BackColor = 8438015
End With
topbouton = topbouton + 25
UF_multiple_nno.Height = topbouton + 50
End If
Next
En fait j'essaye de créer autant de label qu'il ne trouve de resultat dans la recherche. Le soucis avec ce code c'est qu'il ne m'affiche que le dernier. Normal je pense vu qu'il prend la derniere valeur attribué aux variables. Du coup je cherche a donner un nouveau nom de variable a chaque foi que la boucle for s'incremente. j'ai bien essayé un truc genre
Dim designation & i AS string
mais visiblement je m'égare.
Une solution pour contrer ce problème ?
If Right(Range("A" & i).Value, 4) Like recherche Then
compteur = compteur + 1
End If
Next
MsgBox compteur
End Sub
Sans fichier joint j'espère que cela répond à ta question. A certainement améliorée.
[/quote]
je repost ailleur mon soucis merci a toi pour l'aide
Je pense qu'il doit y avoir beaucoup plus simple avec l'instruction WorksheetFunction.CountIf