Explication de Code VBA

Bonjour à tous et merci à tous les membres du forum pour l'entraide que vous apportez.

Je sui une nouvelle utilisatrice et en fait j'ai un taf à faire en VBA qui consiste à automatiser des tâches dans un classeur Excel: le fichier étant confidentiel, j'ai éssayé de m'initier au cours de VBA proposé sur ce forum ce qui m'a permis d'avoir quelques notions de base en VBA.

Voici mon soucis: j'ai deux feuilles excel dans un classeur, et je dois mettre à jour la 1ère feuille à partir de la 2e feuille: en clair pour faire un peu simple, la 2e feuille est une extraction régulière dans SAP qui contient des noms de personnes, leur identifiant SAP,leur nombre d'heure travaillées et le mois correspondant à ces nombres d'heures effectivement travillées.

Et donc c'est à partir de mes nouvelles extractions dans cette 2ème feuille sur SAP que je dois mettre à jour ma 1ère feuille en ajoutant dans la 1ère feuille les nouvelles personnes (leur nom), leur identifiant SAP, leur nombre d'heures travaillées et le mois correspondant.

Voilà en parcourant ce forum, j'ai vu qu'une personne avait eu un sujet un peu similaire dans le genre ou un autre membre du forum l'a aidé à écrire son code que voici:

For J=2 to F2.Range ("A"& Row.Count).End (x1Up.Row)

Set Cel)=F1. Columns ("A").Find ( What:=F2.Range("A"& J) LookIn: X1Values, Lookat:=X1 Whole)

avec F1= la 1ère feuille du classeur Excel

F2= la 2 ème feuille de ce même claseur Excel.

Mon soucis est que je suis nouvelle en VBA, et je comprend cette partie du code:For J=2 to F2.Range ("A"& Row.Count).End (x1Up.Row)

Mais je ne comprend pas cette partie du code: Set Cel)=F1. Columns ("A").Find ( What:=F2.Range("A"& J) LookIn: X1Values, Lookat:=X1 Whole)

j'aimerais que vous m'expliquiez un peu dans les détails ce que cela veut bien dire, afin que je puisse éssayer d'avancer sur mon code et finaliser mon TAF, car cela fait plusieurs jours que je bloque sur mon code.

Mercci à tous......

Bonjour

Un début d'explication

Sub test()

  ' Parcourt de la ligne 2 dans la colonne A jusqu'à la dernière cellule non vide de cette colonne
  For J = 2 To F2.Range("A" & Row.Count).End(x1Up.Row)

    ' Fonction recherche
    ' Places ton curseur sur le mot Find et appuies sur la touche F1
    ' Recherche dans la page F1 colonne A le mot situé dans la page F2 cellule A...
    ' Recherche dans les valeurs
    ' Recherche la totalité du mot
    ' Ce sont les options lorsque tu fais une recherche dans Excel ( Ctrl + h )
    Set Cel = F1.Columns("A").Find(What:=F2.Range("A" & J), LookIn:=xlValues, Lookat:=xlWhole)

    ' On passe à la ligne suivante
  Next J

End Sub

Merci BANZAI64 de m'avoir répondu, je vais éssayer de l'appliquer à mon taf et voir ce que cela me donnera.

Merci à tous.....

Rechercher des sujets similaires à "explication code vba"