Trouver la répétition d'un chaine de caractére dans une cellule

Le
Nistan
Bonsoir,

Je fais l'import de données d'une base obdc dans excel, ensuite je recherche
une chaine de caractére dans une cellule qui contient énormément de ligne par
la formule suivante :
=SI(ESTNUM(CHERCHE("*vts*";N01));"rejet";"complet")
maintenant je voudrait pouvoir conter le nombre de fois que *vts* apparait
dans cette cellule.
Comment fais t-on?
Merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
LSteph
Le #5390431
Bonsoir,

Function cptIn(ByRef C As String, Str As String) As Integer
Dim i As Integer
For i = 1 To Len(C) - Len(Str)
If Mid(C, i, Len(Str)) = Str Then cptIn = cptIn + 1
Next
End Function

'--
'lSteph

Bonsoir,

Je fais l'import de données d'une base obdc dans excel, ensuite je recherche
une chaine de caractére dans une cellule qui contient énormément de ligne par
la formule suivante :
=SI(ESTNUM(CHERCHE("*vts*";N01));"rejet";"complet")
maintenant je voudrait pouvoir conter le nombre de fois que *vts* apparait
dans cette cellule.
Comment fais t-on?
Merci


LSteph
Le #5390421
Bonsoir,

Function cptIn(ByRef C As String, Str As String) As Integer
Dim i As Integer
For i = 1 To Len(C) - Len(Str)
If Mid(C, i, Len(Str)) = Str Then cptIn = cptIn + 1
Next
End Function

'--
'lSteph

Bonsoir,

Je fais l'import de données d'une base obdc dans excel, ensuite je recherche
une chaine de caractére dans une cellule qui contient énormément de ligne par
la formule suivante :
=SI(ESTNUM(CHERCHE("*vts*";N01));"rejet";"complet")
maintenant je voudrait pouvoir conter le nombre de fois que *vts* apparait
dans cette cellule.
Comment fais t-on?
Merci


LSteph
Le #5390401
Précision entrer la formule ainsi:

=cptIn(N1;"vts")


Bonsoir,

Function cptIn(ByRef C As String, Str As String) As Integer
Dim i As Integer
For i = 1 To Len(C) - Len(Str)
If Mid(C, i, Len(Str)) = Str Then cptIn = cptIn + 1
Next
End Function

'--
'lSteph

Bonsoir,

Je fais l'import de données d'une base obdc dans excel, ensuite je
recherche une chaine de caractére dans une cellule qui contient
énormément de ligne par la formule suivante :
=SI(ESTNUM(CHERCHE("*vts*";N01));"rejet";"complet")
maintenant je voudrait pouvoir conter le nombre de fois que *vts*
apparait dans cette cellule.
Comment fais t-on?
Merci




Jacky
Le #5390391
Bonsoir Stéphane

Et si Monsieur "Str" se trouve en queue de peloton ???
... - Len(Str)
;-))


--
Bonne nuit
JJ


"LSteph" %
Précision entrer la formule ainsi:

=cptIn(N1;"vts")


Bonsoir,

Function cptIn(ByRef C As String, Str As String) As Integer
Dim i As Integer
For i = 1 To Len(C) - Len(Str)
If Mid(C, i, Len(Str)) = Str Then cptIn = cptIn + 1
Next
End Function

'--
'lSteph

Bonsoir,

Je fais l'import de données d'une base obdc dans excel, ensuite je
recherche une chaine de caractére dans une cellule qui contient
énormément de ligne par la formule suivante :
=SI(ESTNUM(CHERCHE("*vts*";N01));"rejet";"complet")
maintenant je voudrait pouvoir conter le nombre de fois que *vts*
apparait dans cette cellule.
Comment fais t-on?
Merci






LSteph
Le #5390381
Function cptIn(ByRef C As String, Str As String) As Integer
Dim i As Integer
For i = 1 To Len(C) + 1 - Len(Str)
If Mid(C, i, Len(Str)) = Str Then cptIn = cptIn + 1
Next
End Function


Bonsoir,

Je fais l'import de données d'une base obdc dans excel, ensuite je recherche
une chaine de caractére dans une cellule qui contient énormément de ligne par
la formule suivante :
=SI(ESTNUM(CHERCHE("*vts*";N01));"rejet";"complet")
maintenant je voudrait pouvoir conter le nombre de fois que *vts* apparait
dans cette cellule.
Comment fais t-on?
Merci


LSteph
Le #5390371
Salut Jacky,

Je viens de m'en rendre compte il y a dix minutes à nouveau testé et envoyé
Comme il y a des jours où on les collectionne dis moi si tu vois autre
chose.

Merci.

Stéphane


Bonsoir Stéphane

Et si Monsieur "Str" se trouve en queue de peloton ???
... - Len(Str)
;-))






Nistan
Le #5390361
Bonsoir,
Merci tout d'abord, mais quelqu'un pourrais m'expliquer le code ci desous.
Désolés, en vba je suis plus que nul, donc... je comprend rien.. a j'ai
oublier de dire que j'avais un grand nombre de ligne (+ de 4000).

Merci.


Function cptIn(ByRef C As String, Str As String) As Integer
Dim i As Integer
For i = 1 To Len(C) + 1 - Len(Str)
If Mid(C, i, Len(Str)) = Str Then cptIn = cptIn + 1
Next
End Function


Bonsoir,

Je fais l'import de données d'une base obdc dans excel, ensuite je recherche
une chaine de caractére dans une cellule qui contient énormément de ligne par
la formule suivante :
=SI(ESTNUM(CHERCHE("*vts*";N01));"rejet";"complet")
maintenant je voudrait pouvoir conter le nombre de fois que *vts* apparait
dans cette cellule.
Comment fais t-on?
Merci





Jacky
Le #5390351
Re...
Tu es loin d'en faire autant que moi...
Perso , ici pour 2 caractères de plus , je me serais passé du - Len(Str)
Mais elle est très bien cette fonction.

Je me suis cassé la tête avec "la recherche de solution " de Modeste de la
nuit dernière
intitulé "Comment mettre le nombre 100 dans une case Excel" 29/11 23h29
"méthode (A +B) / (C + D)
combien de solutions ???"
Je ne suis emmêlé les pédales que j'en ai encore mal à mon neurone
Sans vraiment de résultat satisfaisant. Bouuuuh!!!
J'ai lâchement abandonné pour le moment.
As-tu essayé ??

--
Salutations
JJ


"LSteph" %
Salut Jacky,

Je viens de m'en rendre compte il y a dix minutes à nouveau testé et
envoyé
Comme il y a des jours où on les collectionne dis moi si tu vois autre
chose.

Merci.

Stéphane


Bonsoir Stéphane

Et si Monsieur "Str" se trouve en queue de peloton ???
... - Len(Str)
;-))








Jacky
Le #5390341
Re....
A défaut de LSteph
Lsteph à concocter une fonction personnalisée, qui sera disponible au même
titre que les fonctions d'XL et sous le nom "cptln" (qui peut d'ailleurs
être modifié par un nom de ton choix)
Dans une cellule
=cptIn(N2;"vts")
retourne le nombre de "vts" contenu dans la cellule N2

Un exemple en dira peut-être un peu plus...
http://cjoint.com/?mbaYuJB5zg
--
Bon courage et bonne nuit
JJ


"Nistan"
Bonsoir,
Merci tout d'abord, mais quelqu'un pourrais m'expliquer le code ci desous.
Désolés, en vba je suis plus que nul, donc... je comprend rien.. a j'ai
oublier de dire que j'avais un grand nombre de ligne (+ de 4000).

Merci.


Function cptIn(ByRef C As String, Str As String) As Integer
Dim i As Integer
For i = 1 To Len(C) + 1 - Len(Str)
If Mid(C, i, Len(Str)) = Str Then cptIn = cptIn + 1
Next
End Function


Bonsoir,

Je fais l'import de données d'une base obdc dans excel, ensuite je
recherche
une chaine de caractére dans une cellule qui contient énormément de
ligne par
la formule suivante :
=SI(ESTNUM(CHERCHE("*vts*";N01));"rejet";"complet")
maintenant je voudrait pouvoir conter le nombre de fois que *vts*
apparait
dans cette cellule.
Comment fais t-on?
Merci







LSteph
Le #5390331
Bonsoir,
exemple avec 1 colonne de 5000 cellules

http://cjoint.com/?mbaZW61WNe

A partir de chaque caractère de la chaine, si on trouve la chaine on
ajoute 1 à cptIn

Cordialement.

--
lSteph

Bonsoir,
Merci tout d'abord, mais quelqu'un pourrais m'expliquer le code ci desous.
Désolés, en vba je suis plus que nul, donc... je comprend rien.. a j'ai
oublier de dire que j'avais un grand nombre de ligne (+ de 4000).

Merci.


Function cptIn(ByRef C As String, Str As String) As Integer
Dim i As Integer
For i = 1 To Len(C) + 1 - Len(Str)
If Mid(C, i, Len(Str)) = Str Then cptIn = cptIn + 1
Next
End Function


Bonsoir,

Je fais l'import de données d'une base obdc dans excel, ensuite je recherche
une chaine de caractére dans une cellule qui contient énormément de ligne par
la formule suivante :
=SI(ESTNUM(CHERCHE("*vts*";N01));"rejet";"complet")
maintenant je voudrait pouvoir conter le nombre de fois que *vts* apparait
dans cette cellule.
Comment fais t-on?
Merci






Publicité
Poster une réponse
Anonyme