Recherche et supprime

Luinil

XLDnaute Nouveau
Bonjour a tous.
J'ai adapté cette formule a mon besoin:
Code:
Private Sub CommandButton2_Click()
Dim Var As String
  Application.ScreenUpdating = False
Acode = ComboBox6.Text
Sheets(Acode).Select
On Error Resume Next
Var = CBO_habilites.Value
'pour ne rien supprimer en cas d' ECHAP ou D'ANNULER
If Var = "" Then Exit Sub
Set MotTrouvé = Cells.Find(What:=Var)
If Not MotTrouvé Is Nothing Then
MotTrouvé.Select
'confirmation de suppression
Style = vbYesNo + vbDefaultButton1
Msg = "Suppression de la ligne"
Title = "Attention suppression de la ligne."
Réponse = MsgBox(Msg, Style, Title)
If Réponse = vbYes Then
ActiveCell.Select
Selection.Clear
End If
Else
MsgBox "Rien trouvé"
Exit Sub
End If
[A1].Select
Call TriHab
  Application.ScreenUpdating = True
  Unload Me
  UserForm7.Show
End Sub
Elle me permet de rechercher dans ma page active, le mot qui se trouve dans mon combobox CBO_habilites et deffacer le contenue de cette cellule.
Mes talents étant se qu'il sont, j'ai besoin de votre aide pour compléter cette formule (ou pour la remplacer par une autre, si vous avez mieux a suggérai).

Les questions:
1-Comment restreindre la recherche à seulement quelque case de ma feuille active? (cell B17 : L80)

2-Certain de c'est mot a rechercher et supprimer sont presque identique (Ex:. armurier;armurier avancer - Feu1;Feu2;Feu3 ...)
Si dans ma liste, j'ai le mot armurier avancer exemple et que je recherche armurier, il me supprimera armurier avancer, se qui n'est vraiment pas bon. Comment faire pour que la recherche ne cherche que les valeur exacte ?

3-Selection.Clear Unmerge mes cellules et supprime les lignes de contour. Comment remplacer Selection.Clear par Selection.write "" (afin de tout simplement effacer le texte en ne marquant rien)?

4 et final-comment lui dire de sélectionné la cellule de la même ligne que lui mais une colonne a droite de plus et d'y inscrire 1 ?

Voila, j'espers que se n'est pas trop demander :s
Merci d'avance pour le temps que vous m'accorderai!
Luinil
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re : Recherche et supprime

Bonjour

Pour ta première question et ta deuxième

essaies en modifiant
Set MotTrouvé = Cells.Find(What:=Var)

par
Set MotTrouvé = Range("B17:L80).Find(What:=Var,Lookat:=xlwhole)
 
Dernière édition:

Kotov

XLDnaute Impliqué
Re : Recherche et supprime

Bonjour Luinil, le forum,

Les questions:
1-Comment restreindre la recherche à seulement quelque case de ma feuille active? (cell B17 : L80)



En déclarant une plage correspondant aux cellules B17:L80 et en recherchant uniquement dans cette plage (dans Set MotTrouvé = Cells.Find(What:=Var), tu recherches dans toutes les cellules)

Code:
Private Sub CommandButton2_Click()
Dim Var As String
'--------------------
[color=red]Dim MaPlage As Range
Set MaPlage = Range(Cells(17, 2), Cells(80, 12))[/color]
'--------------------
  Application.ScreenUpdating = False
Acode = ComboBox6.Text
Sheets(Acode).Select
On Error Resume Next
Var = CBO_habilites.Value
'pour ne rien supprimer en cas d' ECHAP ou D'ANNULER
If Var = "" Then Exit Sub
'------------------------------------
Set MotTrouvé = [color=red]MaPlage[/color].Find(What:=Var)
'-------------------------------------
If Not MotTrouvé Is Nothing Then
MotTrouvé.Select
....... suite de la macro

2-Certain de c'est mot a rechercher et supprimer sont presque identique (Ex:. armurier;armurier avancer - Feu1;Feu2;Feu3 ...)
Si dans ma liste, j'ai le mot armurier avancer exemple et que je recherche armurier, il me supprimera armurier avancer, se qui n'est vraiment pas bon. Comment faire pour que la recherche ne cherche que les valeur exacte ?


Tu peux,avant de supprimer les données de la cellule, faire une comparaison de la valeur cherchée et de la valeur trouvée :
Par exemple :
Tu vérifies si la valeur cherchée correspond à la valeur complète figurant dans la cellule trouvée (dans ta macro, la suppression se fait si le mot cherché figure dans la cellule trouvée)
Var= valeur cherchée, MotTrouvé = valeur de la cellule dans laquelle on retrouve Var
Si les 2 sont égaux, tu effaces MotTrouvé, sinon tu gardes



3-Selection.Clear Unmerge mes cellules et supprime les lignes de contour. Comment remplacer Selection.Clear par Selection.write "" (afin de tout simplement effacer le texte en ne marquant rien)?


Utilises Selection.ClearContents



4 et final-comment lui dire de sélectionné la cellule de la même ligne que lui mais une colonne a droite de plus et d'y inscrire 1 ?



Utilises Offset(0,1)
exemple :
ActiveCell.Offset(0, 1)=1 (le premier chiffre décale les rangées, le second les colonnes)


Bon dimanche
Kotov
 
Dernière édition:

Luinil

XLDnaute Nouveau
Re : Recherche et supprime

Merci pour vos réponses :)
Je les test dans quelques instant.

Pour la question 2, en fait j'aimerais supprimer la demande de confirmation, afin que cela se fasse automatiquement, donc se ne doit pas être l'utilisateur qui regarde si la réponse trouver est identique ...

Une idée ?
Luinil
 

Discussions similaires

Réponses
16
Affichages
1 K

Statistiques des forums

Discussions
312 472
Messages
2 088 709
Membres
103 928
dernier inscrit
MIKETUAU