Boucle rechercheV VBA

Bonjour,

Je souhaite simplement créer une boucle avec le code ci-dessous :

Private Sub SpinButton2_Change()

On Error Resume Next
Feuil1.Range("Q2") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A2:AJ1000"), 2, False)
Feuil1.Range("Q3") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A2:AJ1000"), 3, False)
Feuil1.Range("Q4") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A2:AJ1000"), 4, False)
Feuil1.Range("Q5") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A2:AJ1000"), 5, False)
Feuil1.Range("Q6") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A2:AJ1000"), 6, False)
Feuil1.Range("Q7") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A2:AJ1000"), 7, False)
Feuil1.Range("Q8") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A2:AJ1000"), 8, False)
Feuil1.Range("Q9") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A2:AJ1000"), 9, False)
Feuil1.Range("Q10") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A2:AJ1000"), 10, False)
Feuil1.Range("Q11") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A2:AJ1000"), 11, False)
Feuil1.Range("Q12") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A:AJ1000"), 12, False)
Feuil1.Range("Q13") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A2:AJ1000"), 13, False)
Feuil1.Range("Q14") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A2:AJ1000"), 14, False)
Feuil1.Range("Q15") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A2:AJ1000"), 15, False)
Feuil1.Range("Q16") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A2:AJ1000"), 16, False)
Feuil1.Range("Q17") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A:AJ1000"), 17, False)
Feuil1.Range("Q18") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A2:AJ1000"), 18, False)
Feuil1.Range("Q19") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A:AJ1000"), 19, False)
Feuil1.Range("Q20") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A:AJ1000"), 20, False)
Feuil1.Range("Q21") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A:AJ1000"), 21, False)
Feuil1.Range("Q22") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A:AJ1000"), 22, False)
Feuil1.Range("Q23") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A:AJ1000"), 23, False)
Feuil1.Range("Q24") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A:AJ1000"), 24, False)
Feuil1.Range("Q25") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A:AJ1000"), 25, False)
Feuil1.Range("Q26") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A:AJ1000"), 26, False)
Feuil1.Range("Q27") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A:AJ1000"), 27, False)
Feuil1.Range("Q28") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A:AJ1000"), 28, False)
Feuil1.Range("Q29") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A:AJ1000"), 29, False)
Feuil1.Range("Q30") = Application.WorksheetFunction.VLookup(Feuil1.Range("L2"), Feuil2.Range("A:AJ1000"), 30, False)

End Sub

Car je dois effectuer cette recherche pour 10000 lignes et j'ai déjà un code volumineux et fatiguant, j'aimerais savoir comment créer une boucle.

Merci d'avance,
cordialement

Hello

Un essaie

Sub test

On Error Resume Next

NbLigne = sheets("Feuil1").Range("L" & Rows.Count).End(coup).Row

For i = 2 to NbLigne
         Sheets("Feuil1").Range("Q" & NbLigne) = Application.WorksheetFunction.VLookup(Sheets("Feuil1").Range("L" & NbLigne), sheets("Feuil2").Range("A:AJ"), i , False)

Next i
End sub

via téléphone c’est un peu galère mais ta formule a pas l’air ok à première vue. Via formule ça le ferait pas ?

Mon code fonctionnera pas, envoie un fichier exemple avec 5 lignes, y’a table source et ton critère ainsi que la table cible stp

@+

Bonjour le forum,

Bonjour BAROUTE78,

Tout d'abord je vous remercie de votre disponibilité et de votre réponse.

L’ide de remplir un formulaire via La toupie(SpinButton).

Voilà mon fichier exemple en pièce jointe exemple pour bien illustrer.

Je vous remercie à l'avance !

Cordialement

Hello,

Pour moi pas besoin de vba. Des recherchesV suffisent et ca fonctionnera avec ton spin button

@+

bonjour !

Merci beaucoup pour votre réponse, mais je veux avoir une solution si possible bien sûr.

Merci

Amicalement

Hello,

Essaie ceci :

Sub test()

Feuil1 = Sheets("Affiche").Name
Feuil2 = Sheets("Base").Name

On Error Resume Next

For i = 2 To 30
    Sheets(Feuil1).Range("Q" & i) = Application.WorksheetFunction.VLookup(Sheets(Feuil1).Range("L2"), Sheets(Feuil2).Range("A:AJ"), i, 0)
Next i

End Sub

@+

Bonsoir le forum

Bonsoir BAROUT78

petit problème le macro ne déclenche pas "ereur d'exécution 438 propriété ou méthode non gérée par cet objet"

Je crois declaration type des feuilles en variable.

Hello,

Ah oui, rajoute un "v" devant chaque Feuil1 et Feuil2, pour avoir que des vFeuil1 et vFeuil2

@+

Bonsoir BAROUT78

Merci beaucoup c'est parfait comme ça

Cordialement,

Hey,

Merci pour le retour, n'hésite pas à passer le sujet ne résolu ;)

@+

Rechercher des sujets similaires à "boucle recherchev vba"