je recherche une methode qui me permet de retrouver dans excel tous les mots contenant certaines lettres quelques soient leur place ex: vu pour VirUs oUVri
pouvez vous m'aider
merci
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Hervé
Bonjour alyne, "Option Compare Text" est à mettre si la casse n'a pas d'importance sinon, supprime le. La proc recherche d'abord la dernière cellule non vide puis scanne la plage à la recherche des combinaisons des 2 lettres. Les adresses des cellules trouvées sont affichées à la fin dans un message. Adapte :
Option Compare Text
Sub Chercher() Dim FE As Worksheet Dim Plage As Range Dim Cel As Range Dim ligne As Integer Dim colonne As Integer Dim Adresse As String Set FE = ActiveSheet With FE ligne = .Cells.Find("*", .[A1], xlFormulas, , _ xlByRows, xlPrevious).Row colonne = .Cells.Find("*", .[A1], xlFormulas, , _ xlByColumns, xlPrevious).Column Set Plage = .Range(.Cells(1, 1), Cells(ligne, colonne)) End With For Each Cel In Plage If Cel.Value Like "*U*V*" Or Cel.Value Like "*V*U*" Then Adresse = Adresse & Cel.Address & vbCrLf End If Next MsgBox Adresse Set Cel = Nothing Set Plage = Nothing Set FE = Nothing End Sub
Hervé.
"alyne" a écrit dans le message news:
je recherche une methode qui me permet de retrouver dans excel tous les mots contenant certaines lettres quelques soient leur place ex: vu pour
VirUs oUVrir
pouvez vous m'aider? merci
Bonjour alyne,
"Option Compare Text" est à mettre si la casse n'a pas d'importance sinon,
supprime le.
La proc recherche d'abord la dernière cellule non vide puis scanne la plage
à la recherche des combinaisons des 2 lettres. Les adresses des cellules
trouvées sont affichées à la fin dans un message. Adapte :
Option Compare Text
Sub Chercher()
Dim FE As Worksheet
Dim Plage As Range
Dim Cel As Range
Dim ligne As Integer
Dim colonne As Integer
Dim Adresse As String
Set FE = ActiveSheet
With FE
ligne = .Cells.Find("*", .[A1], xlFormulas, , _
xlByRows, xlPrevious).Row
colonne = .Cells.Find("*", .[A1], xlFormulas, , _
xlByColumns, xlPrevious).Column
Set Plage = .Range(.Cells(1, 1), Cells(ligne, colonne))
End With
For Each Cel In Plage
If Cel.Value Like "*U*V*" Or Cel.Value Like "*V*U*" Then
Adresse = Adresse & Cel.Address & vbCrLf
End If
Next
MsgBox Adresse
Set Cel = Nothing
Set Plage = Nothing
Set FE = Nothing
End Sub
Hervé.
"alyne" <alyne.15@voila.fr> a écrit dans le message news:
3F8740EC-4806-445A-A5AB-89ECF2D2AE68@microsoft.com...
je recherche une methode qui me permet de retrouver dans excel tous les
mots contenant certaines lettres quelques soient leur place ex: vu pour
Bonjour alyne, "Option Compare Text" est à mettre si la casse n'a pas d'importance sinon, supprime le. La proc recherche d'abord la dernière cellule non vide puis scanne la plage à la recherche des combinaisons des 2 lettres. Les adresses des cellules trouvées sont affichées à la fin dans un message. Adapte :
Option Compare Text
Sub Chercher() Dim FE As Worksheet Dim Plage As Range Dim Cel As Range Dim ligne As Integer Dim colonne As Integer Dim Adresse As String Set FE = ActiveSheet With FE ligne = .Cells.Find("*", .[A1], xlFormulas, , _ xlByRows, xlPrevious).Row colonne = .Cells.Find("*", .[A1], xlFormulas, , _ xlByColumns, xlPrevious).Column Set Plage = .Range(.Cells(1, 1), Cells(ligne, colonne)) End With For Each Cel In Plage If Cel.Value Like "*U*V*" Or Cel.Value Like "*V*U*" Then Adresse = Adresse & Cel.Address & vbCrLf End If Next MsgBox Adresse Set Cel = Nothing Set Plage = Nothing Set FE = Nothing End Sub
Hervé.
"alyne" a écrit dans le message news:
je recherche une methode qui me permet de retrouver dans excel tous les mots contenant certaines lettres quelques soient leur place ex: vu pour