Bonjour ! Je suis nouveau dans le monde de VBA et j'ai des problèmes. J’ai deux feuilles et j’ai besoin d’obtenir des noms de champs pour chaque personne. Pour cela, je dois prendre une personne d’une ligne dans la feuille 2, puis je dois obtenir le champs auquel cette personne est affectée dans la feuille 1 sur le tableau de droite (pour chaque ligne). Pour cette partie, j’ai trouvé et modifié ce code VBA, mais il ne fait pas ce dont j’ai besoin ... :
Dim rgFound As Range
Dim defVal As Range
Dim currParam As Range
Dim currParamDict As Range
With Worksheets("Sheet2")
For Each defVal In .Range("B3", .Range("B" & Rows.Count).End(xlUp)).Offset(, 1)
Set currParam = defVal.Offset(, -1)
If Len(currParam.Value) > 0 Then
Set rgFound = Worksheets("Sheet1").Range("F9:I12").Find(currParam.Value)
If rgFound Is Nothing Then
Debug.Print "Name was not found."
Else
Set currParamDict = rgFound.Offset(, 0)
defVal.Value = currParamDict.Value
End If
End If
Next defVal
End With
Je ne sais pas pour la plage dans : Set rgFound = Worksheets(« Sheet1 »). R(« F9:I12 »). Find(currParam.Value)
J’ai mis quelques exemples de photos pour que vous puissiez voir de quoi il s’agit.
Feuille 1 :
Feuille 2 :
Après cette étape, je dois remplir les dates correspondant aux champs en utilisant le tableau de gauche de la Feuille1...