OVH Cloud OVH Cloud

recherche chaine

6 réponses
Avatar
Emcy
bonjours,

en vba, je recherche la méthode la PLUS RAPIDE pour me donner les numéros de
lignes où il y a les text "toto" dans la colonne A1

6 réponses

Avatar
jb
=SI(ESTNUM(CHERCHE("toto";A1));LIGNE();"")

Cordialement JB
Avatar
anonymousA
Bonjour,

que veux-tu dire par "donner". Est-ce symboliser par une couleur
particulière, est-ce donner les N° dans un tableau que tu peux
récupérer comme variable, Est-ce visualiser seulement à l'écran les
lignes contenant le texte ?
En fonction de ta réponse , les méthodes peuvent être très
différentes
A+
Avatar
jb
Ecrit en colonne C les numéros des lignes.

Sub essai()
Range("A1", Selection.End(xlDown)).Select
p = 1
For Each c In Selection
If InStr(c.Value, "toto") > 0 Then
Cells(p, 3) = c.Row
p = p + 1
End If
Next c
End Sub
Avatar
Emcy
merci

"jb" a écrit dans le message de news:

Ecrit en colonne C les numéros des lignes.

Sub essai()
Range("A1", Selection.End(xlDown)).Select
p = 1
For Each c In Selection
If InStr(c.Value, "toto") > 0 Then
Cells(p, 3) = c.Row
p = p + 1
End If
Next c
End Sub
Avatar
Oliv'
jb que je salut a écrit dans



c'est pas mieux avec ?
Range("A1", Range("A1").End(xlUp)).Select

à cause des trous !!! ou de la cellule selectionnée au départ

--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have a nice day
Oliv'
Pour me joindre : http://cerbermail.com/?V8r2o1YHl4
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Avatar
Daniel
Bonjour.
Essaie :

Sub test1()
Dim Var As Range, Adresse As String
Set Var = Range("A:A").Find("toto")
If Var Is Nothing Then Exit Sub
MsgBox Var.Row
Adresse = Var.Address
Do
Set Var = Range("A:A").FindNext(Var)
If Var Is Nothing Then Exit Sub
If Var.Address = Adresse Then Exit Sub
MsgBox Var.Row
Loop While Not Var Is Nothing
End Sub

Cordialement.
Daniel
"Emcy" a écrit dans le message de news:
%
bonjours,

en vba, je recherche la méthode la PLUS RAPIDE pour me donner les numéros
de lignes où il y a les text "toto" dans la colonne A1