Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

erreur d'execution 13

laurent.madec

XLDnaute Nouveau
Bonjour le forum!

j'ai une Macro pour faire une mise en forme conditionnelle, mais lorsque je veux copier la cellule, j'ai un message d'erreur : "erreur d'execution 13"

voici mon code :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Value = "EX" Then Target.Interior.ColorIndex = 36
If Target.Value = "ET" Then Target.Interior.ColorIndex = 34
If Target.Value = "VA" Then Target.Interior.ColorIndex = 44


If Target.Value <> "EX" And Target.Value <> "BB" And Target.Value <> "ET" _
And Target.Value <> "VA" Then Target.Interior.ColorIndex = 2

End Sub

il doit me manquer un bout de code...
 

Luki

XLDnaute Accro
Re : erreur d'execution 13

Bonjour Laurent, re Jean-Pierre, salut Pascal

Le problème vient du fait que ton "target" est une plage de cellule.

Tu ne peux donc pas comparer en même temps plusieurs cellules. Il faut dans ce cas, passer par une boucle. Tu peux regarder l'exemple ci-dessous, ça devrait répondre à ta question. (dernier post sur le fil)

https://www.excel-downloads.com/thr...macro-dans-une-fonction-conditionnelle.86030/

Bonne journée à tous.

Edit : Salut Pierrot
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : erreur d'execution 13

Bonjour Laurent, Jean-Pierre, Pascal

modifies peut être ta macro comme suit :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
For Each c In Target
    If c.Value = "EX" Then c.Interior.ColorIndex = 36
    If c.Value = "ET" Then c.Interior.ColorIndex = 34
    If c.Value = "VA" Then c.Interior.ColorIndex = 44
    If c.Value <> "EX" And c.Value <> "BB" And c.Value <> "ET" _
        And c.Value <> "VA" Then c.Interior.ColorIndex = 2
Next c
End Sub

bonne journée
@+

Edition bonjour Luki
 

Discussions similaires

Réponses
1
Affichages
152
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…