VBA - Methode Find
RussellD
Messages postés
60
Statut
Membre
-
superip69 -
superip69 -
Bonjour à tous,
je programme des macros en VBA sur Excel 2003, et aimerais avoir un peu d'aide concernant la méthode "Find".
J'utilise actuellement un code qui me permet de chercher dans la colonne L et d'activer la cellule contenant la valeur demandée (chosiie dans un ComboBox). La cellule est ensuite supprimée, ainsi que les 3 qui se trouvent à sa droite. Cela donne ceci :
le problème, c'est qu'il ne cherche pas la valeur excate.. Par exemple, si vous lui demandez de chercher la valeur "voiture", et que vous avez dans la colonne L les valeurs, entre autres, "voiture" et "voiture de sport", les 2 vont être supprimées.. Je souhaiterais que seule la valeur exacte (donc "voiture") le soit.
Quelqu'un peut-il me donner un coup de main?
D'avance merci pour vos réponses,
Cordialement
je programme des macros en VBA sur Excel 2003, et aimerais avoir un peu d'aide concernant la méthode "Find".
J'utilise actuellement un code qui me permet de chercher dans la colonne L et d'activer la cellule contenant la valeur demandée (chosiie dans un ComboBox). La cellule est ensuite supprimée, ainsi que les 3 qui se trouvent à sa droite. Cela donne ceci :
X = ComboBox1.Value
With Range("L:L")
Set c = .Find(X, , xlValues, xlWhole, xlByColumns)
c.Activate
End With
ActiveCell.Offset(0, 3).Delete
ActiveCell.Offset(0, 2).Delete
ActiveCell.Offset(0, 1).Delete
ActiveCell.Delete
le problème, c'est qu'il ne cherche pas la valeur excate.. Par exemple, si vous lui demandez de chercher la valeur "voiture", et que vous avez dans la colonne L les valeurs, entre autres, "voiture" et "voiture de sport", les 2 vont être supprimées.. Je souhaiterais que seule la valeur exacte (donc "voiture") le soit.
Quelqu'un peut-il me donner un coup de main?
D'avance merci pour vos réponses,
Cordialement
A voir également:
- VBA - Methode Find
- Find and mount - Télécharger - Récupération de données
- Ava find - Télécharger - Divers Utilitaires
- Excel compter cellule couleur sans vba - Guide
- Dépassement de capacité vba ✓ - Forum Excel
- Vba récupérer valeur cellule ✓ - Forum VB / VBA
2 réponses
Bonjour,
Essaye avec cette macro à mettre dans le module de la feuille.
Tu dois bien sûr, initialiser Chercher quelque part .
A+
Essaye avec cette macro à mettre dans le module de la feuille.
Option Explicit
Dim Chercher As String
Sub Supprime()
Dim Lig As Long, DerLig As Long
Chercher = "Voiture"
DerLig = Range("L65535").End(xlUp).Row
For Lig = DerLig To 1 Step -1 ' 1 = première ligne de la recherche
'UCase c'est pour ne pas tenir compte de la case maju ou minus
If UCase(Cells(Lig, "L")) = UCase(Chercher) Then
Range(Cells(Lig, "L"), Cells(Lig, "O")).Delete Shift:=xlUp
Lig = Lig - 1
End If
Next Lig
End Sub
Tu dois bien sûr, initialiser Chercher quelque part .
A+