VBA Selection et copie d'une ligne suite à une fonction .find
Bonjour,
Je me présente, je suis Morgane. Je débute dans VBA et j’atteins donc vite mes limites... J'ai fouillé sur plusieurs forums dont celui-ci mais je n'ai pas réussi à adapter sans bug à mon propre fichier...
J'ai créé un formulaire permettant de recueillir des critères de recherche pour ainsi aller rechercher dans une feuille toutes les lignes correspondants a ce(s) critère(s).
J'ai du mal trouver ce qui bug dans mon code. J'aimerais qu'après la fonction .find une fois que j'ai trouvé la cellule qui contient ma recherche, je puisse sélectionner toute la ligne correspondante à cette cellule et qu'elle se copie dans une feuille du même classeur.
Ici c'est un exemple avec le Critère Année, mais je devrais l'adapté à tous les critères prévus.
Je ne sais pas si je suis claire mais voici mon code.
Je vous remercie infiniment pour votre aide, indulgence et bienveillance face à ma question simpliste de débutante :)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
Public Sub CmdLancerRecherche_Click()
Dim MaBase As Range '= tableau dans lequel on fait la recherche ==> Onglet Inspection&Questionnement
Dim Annee As String '=TextBox Annee du formulaire de recherche
Dim Autorite As String '=TextBox Autorite du formulaire de recherche
Dim Pays As String '=TextBox Pays du formulaire de recherche
Dim MarqueProduit As String '=TextBox MarqueProduit du formulaire de recherche
Dim Thematique As String '=TextBox Thematique du formulaire de recherche
Dim Ecart As String '=TextBox Ecart du formulaire de recherche
Dim Cell As Range 'chaque cellule passée au crible pour la recherche
Dim Recherche As Range 'résultat de la recherche sur chaque cellule
Annee = TextAnnee
Autorite = TextAutorite
Pays = TextPays
MarqueProduit = TextMarqueProduit
Thematique = TextThematique
Ecart = TextEcart
For Each Cell In Worksheets("Inspections & Questionnements").Range("B2:B100") 'je ne souhaite chercher Annee que dans la colonne B dont les cases sont non vides
Recherche = Worksheets("Inspections & Questionnements").Range("B2:B100").Find(Annee).Select 'je stock dans la variable Recherche la cellule qui match avec ma recherche
Recherche.EntireRow.Copy Worksheets("Résultat").Range("A1").End(xlUp) 'ici je souhaiterais copier la ligne entière correspondante à ma cellule trouvée et selectionnée à la ligne au dessus
Next Cell |