Bonjour,

Je loupe une étape dans le déroulement d'une procédure
En effet je change la valeur d'une déroulante situé en cellule U6
La procédure démarre sans souci jusqu'à ce que lors de la procédure il prend le target.adress du code "Indicateur" qui s'effectue soit (J135:AB300) => Erreur exécution '13' Incompatibilité de type
et là je séche!!!

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Private Sub Worksheet_Change(ByVal Target As Range)
 
If Target.Address = "$U$4" And Target.Count = 1 Then
        Range("U6").Select
        SendKeys "%{up}"
 
ElseIf Target.Address = "$U$6" And Target.Offset(-2, 0).Value = "EXPLOITATION" Then
                Rows("8:8").Hidden = False
                Range("U8").Select
                SendKeys "%{up}"
 
ElseIf Target.Address = "$U$6" And Target.Offset(-2, 0).Value <> "EXPLOITATION" Then
                Rows("8:8").Hidden = True
End If
End Sub
et qui appelle la procédure suivante

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Sub indicateur()
Dim i&, l&
 
Dim Ws As Worksheet, Ws1 As Worksheet
 
Set Ws = ThisWorkbook.Worksheets("Fichier de Travail")
Set Ws1 = ThisWorkbook.Worksheets("Fichier Plat")
            l = Ws.Range("A4").Value
            On Error Resume Next
            i = Ws.Range("A3").Value
 
 
        Ws.Range("J135:AB184").Copy Destination:=Ws1.Range("J" & l & ":AB" & l + 49)
        Ws.Range("AF135:AG184").Copy Destination:=Ws1.Range("AF" & l & ":AG" & l + 49)
        Ws.Range("J135:AB300").ClearContents
        Ws.Range("AE135:AF300").ClearContents
        Ws1.Range("J" & i & ":AB" & i + 49).Copy Destination:=Ws.Range("J135")
        Ws1.Range("AF" & i & ":AG" & i + 49).Copy Destination:=Ws.Range("AF135")
        Ws.Range("A4").Value = Ws.Range("A3")
 
 
End Sub

Merci de vos éclairages