skygoat76
XLDnaute Junior
Bonjour,
J'ai une macro dans mon fichier (Cijoint.fr - Service gratuit de dépôt de fichiers)
Mon soucis est qu'elle a l'air de fonctionner une fois sur deux.
Le bout de code en gras est mon problème.
Vous pourrez voir que mon fichier a plusieurs onglets : "LUP VIE SERIE" et "ACTIONS". Et normalement, la macro devrait copier des valeurs d'un onglet à l'autre...
Or, elle le fait de façon hasardeuse...
J'ai une macro dans mon fichier (Cijoint.fr - Service gratuit de dépôt de fichiers)
Mon soucis est qu'elle a l'air de fonctionner une fois sur deux.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim cellRecherche, CelA, CelB As Range
Dim anneeA, anneeB, semaineA, semaineB As String
If Target.Column = 25 Then
If Target = "" Then
Range(Cells(Target.Row, 27), Cells(Target.Row, 30)).Interior.Color = RGB(125, 125, 125)
Else
Range(Cells(Target.Row, 27), Cells(Target.Row, 30)).Interior.Color = RGB(256, 256, 256)
End If
End If
With ThisWorkbook.Sheets("ACTIONS")
If UCase(Range("Y" & Target.Row).Text) = "OUI" Then
[B]Set cellRecherche = .Columns("A").Find(Range("B" & Target.Row).Value, , xlValues, xlWhole, , , False)
If Range("V" & Target.Row).Text = "Soldée" Then
If Not cellRecherche Is Nothing Then cellRecherche.EntireRow.Delete
Else
If cellRecherche Is Nothing Then .Range("A" & .Rows.Count).End(xlUp).Offset(1, 0) = Range("B" & Target.Row).Value
End If
Set cellRecherche = .Columns("B").Find(Range("H" & Target.Row).Value, , xlValues, xlWhole, , , False)
If Range("V" & Target.Row).Text = "Soldée" Then
If Not cellRecherche Is Nothing Then cellRecherche.EntireRow.Delete
Else
If cellRecherche Is Nothing Then .Range("B" & .Rows.Count).End(xlUp).Offset(1, 0) = Range("H" & Target.Row).Value
End If[/B]
Set cellRecherche = .Columns("C").Find(Range("I" & Target.Row).Value, , xlValues, xlWhole, , , False)
If Range("V" & Target.Row).Text = "Soldée" Then
If Not cellRecherche Is Nothing Then cellRecherche.EntireRow.Delete
Else
If cellRecherche Is Nothing Then .Range("C" & .Rows.Count).End(xlUp).Offset(1, 0) = Range("I" & Target.Row).Value
End If
End If
End With
End Sub
Le bout de code en gras est mon problème.
Vous pourrez voir que mon fichier a plusieurs onglets : "LUP VIE SERIE" et "ACTIONS". Et normalement, la macro devrait copier des valeurs d'un onglet à l'autre...
Or, elle le fait de façon hasardeuse...