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

VBA erreur d'execution, HELP!

  • Initiateur de la discussion Initiateur de la discussion espionne
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

E

espionne

Guest
Bonjour,j'ai réalisé une macro que voici:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim cellule As Range
Set cellule = Application.Intersect(Range("M5:AQ41"), Target)
If cellule Is Nothing Then Exit Sub
Select Case Target.Value
Case "JR"
Target.Interior.ColorIndex = 45
Case "CP"
Target.Interior.ColorIndex = 50
Case Empty
Target.Interior.ColorIndex = 0
Case "RTT"
Target.Interior.ColorIndex = 35
Case "MAL"
Target.Interior.ColorIndex = 6
Case "RECUP"
Target.Interior.ColorIndex = 4
Case "FOR"
Target.Interior.ColorIndex = 12
le probleme c'est que quand je veux incrémenter des cellules avec des valeurs contenues dans macro, ca affiche erreur d'execution 13, incompatibilité de type. Même si cela ne m'empeche pas d'incrémenter ( je ferme le message d'erreur), cela m'enerve. Quelqu'un a t'il la solution ? merci beaucoup par avance
 
Re : VBA erreur d'execution, HELP!

Bonsoir,

essaye ceci :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Range("M5:AQ41"), Target) Is Nothing Then
Select Case Target
Case "JR"
Target.Interior.ColorIndex = 45
Case "CP"
Target.Interior.ColorIndex = 50
Case Empty
Target.Interior.ColorIndex = 0
Case "RTT"
Target.Interior.ColorIndex = 35
Case "MAL"
Target.Interior.ColorIndex = 6
Case "RECUP"
Target.Interior.ColorIndex = 4
Case "FOR"
Target.Interior.ColorIndex = 12
End Select
End If
End Sub
N'oublie pas de respecter les majuscules dans les données que tu vas utiliser.
Amicalement
Dan
 
Re : VBA erreur d'execution, HELP!

Bonsoir,
Peut-être comme ça, pour éviter le bug à la recopie incrémentée
 
Re : VBA erreur d'execution, HELP!

re,

Evite d'utiliser le mot Cellule qui correspond à une fonction d'excel.
Si on utilise la proposition de Kjin, la macro peut devenir :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Not Application.Intersect(Range("M5:AQ41"), Target) Is Nothing Then
Select Case Target
Case "JR"
Target.Interior.ColorIndex = 45
Case "CP"
Target.Interior.ColorIndex = 50
Case Empty
Target.Interior.ColorIndex = 0
Case "RTT"
Target.Interior.ColorIndex = 35
Case "MAL"
Target.Interior.ColorIndex = 6
Case "RECUP"
Target.Interior.ColorIndex = 4
Case "FOR"
Target.Interior.ColorIndex = 12
End Select
End If
End Sub
Dan
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
4
Affichages
586
M
Réponses
1
Affichages
2 K
S
Réponses
9
Affichages
2 K
M
Réponses
7
Affichages
4 K
M
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…