Condition en langage VBA

Bonjour,

Je souhaiterais écrire une condition en langage VBA.

Sur le fichier joint à ce message vous trouverez un code VBA en module 1 (déjà exécuté) permettant de réaliser la feuille "BonBar". Ce n'est pas moi qu'il est fait étant encore novice dans le domaine...

La condition souhaitée sur la feuille "BonBar":

SI en colonne A est trouvé "Accessoire à livrer (A1)" ALORS dans la même zone du Bon de Barre au niveau de la cellule "Sitio de Prod" sur la droite, il doit y avoir "ARICK (101)" et non "STRUCHARB (103)".

En module 2 voici mon code:

Sub SitioProd

Dim AL As Integer

Worksheets ("BonBar").Select

AL = Range("A:A").Select

If AL="Accessoire à livrer (A1)" Then
Range ("D3")="ARICK (101)"
End If

End Sub

Merci pour votre aide encore une fois !

26test-v1.xlsm (52.23 Ko)

Ou sinon j'ai trouvé ce code grâce à un enregistrement de macro:

Cells.Find(What:="Accessoire à livrer", After:=ActiveCell, LookIn:= _
        xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
        xlNext, MatchCase:=False, SearchFormat:=False).Activate

Mais pour le compléter il faudrait que je dise que dès que la donnée "Accessoire à livrer" est trouvé, il faut 3 lignes avant en colonne D mettre la donnée "ARICK (101)", comment puis-je procéder ?

J'ai presque trouvé mais mon Offset ne marche pas.

Sub AL101()

Worksheets("BonBar").Select

Cells.Find(What:="Accessoire à livrer", After:=ActiveCell, LookIn:= _
        xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
        xlNext, MatchCase:=False, SearchFormat:=False).Activate

ActiveCell.Offset([u]"D"[/u], 2).Select
ActiveCell.FormulaR1C1 = "ARICK (101)"

End Sub

A tester :

Sub AL101()

Worksheets("BonBar").Select

Cells.Find(What:="Accessoire à livrer", LookIn:= _
        xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
        xlNext, MatchCase:=False, SearchFormat:=False).Activate

Cells(ActiveCell.Row - 3, 4).FormulaR1C1 = "ARICK (101)"

End Sub
Rechercher des sujets similaires à "condition langage vba"