VBA Excel : Identifier la 4ème lettre d'un code

Résolu
KMIKZ Messages postés 21 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 26 avril 2008 - 25 avril 2008 à 07:05
KMIKZ Messages postés 21 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 26 avril 2008 - 26 avril 2008 à 08:41
Bonjour à tous,
Je ne parviens pas à accéder au forum alors je ne sais pas si ma question existe ou non.
Est-ce qu'il est possible sous VBA (Excel) de parcourir une colonne et de compter tous les codes dont la 4ème lettre est un C (par exemple)
Exemple : U65V66T
                J89X78P
                L46CB71 ----> ici la réponse sera 1 car il y a un seul code dans la colonne avec un C en 4ème position
Merci d'avance pour vos propositions

KMIKZ

2 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
25 avril 2008 à 07:20
Public Function CountItemsInColumns(ByVal voSheet As Worksheet, ByVal vnColumn As Long, ByVal vnCharPos As Long, ByRef vsFind As String, Optional vnStartRow As Long = 1) As Long
Dim i As Long
Dim nLength As Long
nLength = Len(vsFind)
For i = vnStartRow To voSheet.Cells.SpecialCells(xlCellTypeLastCell).Row
If Mid$(voSheet.Cells(i, vnColumn).Text, vnCharPos, nLength) = vsFind Then
CountItemsInColumns = CountItemsInColumns + 1
End If
Next i
End Function

Sub test()
MsgBox CountItemsInColumns(ActiveSheet, 1, 4, "C")
End Sub
KMIKZ Messages postés 21 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 26 avril 2008
26 avril 2008 à 08:41
Merci beaucoup.
J'ai mis un peu de temps avant de conprendre.
Mais j'ai réussi à exploiter ce programme pour le faire fonctionner dans ma macro vba

KMIKZ
Rejoignez-nous