Erreur d'exécution 13

Bonjour,

Cela fait quelque temps que je bloque sur ce problème d'exécution '13' et je n'arrive pas à trouver la solution.

Voilà mon programme :

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Application.Intersect(Target, Range("G48")) Is Nothing Then

If Target Like "R*" Then

Range("K14").Interior.ColorIndex = 10

ElseIf Target Like "ED" Then

Range("K12").Interior.ColorIndex = 10

Else

Range("K12").Interior.ColorIndex = 2

End If

End If

End Sub

Et c'est en lançant une autre macro que l'erreur s'affiche.

Si quelqu’un pourrait m’aider ça serait génial merci

Bonjour,

je ne vois pas d'erreur sur ce code.

sur quelle instruction, la macro se plante-t-elle ?

En fait le programme tout seul fonctionne très bien mais c'est lors de l'exécution d'une autre macro qu'il me donne l'erreur. Lorsque je fais débogage il m'indique cette ligne.

=>If Target Like "R*" Then

(L'autre macro quand t-a elle va copier/coller des cellules dans les différentes feuilles)

re-bonjour,

peux-tu mettre ton fichier et la séquence des opérations pour reproduire l'erreur ?

Oui bien sûr, je ne t’ai pas joint l’original car comme c’est pour le travail et je ne sais pas trop si j’ai le droit de le partager, mais je t’ai mis tout ce qu’il y à savoir dans la copie.

Alors dans les projets VBA dans la feuil2 il y a le programme qui je s’exécuté lorsque l’on va modifier la cellule G48 (qui fonctionne) mais lorsque j’exécute la macro 13 il m’affiche l’erreur.

Merci pour ton aide

8classeur1.xlsm (17.03 Ko)

re-bonjour,

est-ce le but que cette macro s'active pendant l'exécution de la macro macro13 ?

sinon

voici une solution. Même si je n'ai pas très compris quelle pourrait être l'utilité de cette macro.(difficile de se faire une idée sans les données)

à tester sur ton fichier. j'ai ajouté une désactivation/actvation de la gestion des événements et réécrit quelque peu le code.

Sub Macro13()
    Application.EnableEvents = False
    For x = 3 To 128
        Sheets("feuil3").Rows(x).Copy
        Sheets("IN_OUT").Range("G11").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
        Sheets("IN_OUT").Range("K11:K73").Copy
        Sheets("Feuil4").Rows(x).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
    Next
    Application.EnableEvents = True
End Sub

re-bonjour,

une autre manière de faire en modifiant la procédure worksheet_change.

Private Sub Worksheet_Change(ByVal Target As Range)
if target.count>1 then exit sub
If Not Application.Intersect(Target, Range("G48")) Is Nothing Then
If Target Like "R*" Then
Range("K14").Interior.ColorIndex = 10
ElseIf Target Like "ED" Then
Range("K12").Interior.ColorIndex = 10
Else
Range("K12").Interior.ColorIndex = 2
End If
End If
End Sub

Bonjour,

Désole pour le peu de renseignement mais t’as deuxième solution fonctionne parfaitement.

Merci pour ton temps et surtout pour la réponse que je n’aurai pas trouvé tout seul !

Rechercher des sujets similaires à "erreur execution"