Anomalie dans une macro excel toute simple

UsulArrakis Messages postés 7405 Date d'inscription   Statut Contributeur Dernière intervention   -  
 Utilisateur anonyme -
Bonjour,
j'ai une macro qui date un peu réalisée au départ pour excel 2003 sous XP
maintenant je suis sous W10 avec excel 2016 et j'ai un message d'erreur sur Interior par rapport à Range
ça freeze excel

si qq'un peut m'aider, je ne suis pas macroteur mais juste utilisateur

merci

Sub ChgCoul(z$)
Dim x%, y%
Select Case z
Case "grisjaune": x = 15: y = 36
Case "grisrien": x = 15: y = none
Case "grisbleu": x = 15: y = 34
Case "grisvert": x = 15: y = 35
Case "grisorange": x = 15: y = 40
Case "vertgris": x = 35: y = 15
Case "vertjaune": x = 35: y = 36
Case "vertbleu": x = 35: y = 34
Case "vertorange": x = 35: y = 40
Case "vertrien": x = 35: y = none
Case "jaunegris": x = 36: y = 15
Case "jaunebleu": x = 36: y = 34
Case "jauneorange": x = 36: y = 40
Case "jaunevert": x = 36: y = 35
Case "jaunerien": x = 36: y = none
Case "bleugris": x = 34: y = 15
Case "bleuvert": x = 34: y = 35
Case "bleujaune": x = 34: y = 36
Case "bleuorange": x = 34: y = 40
Case "bleurien": x = 34: y = none
Case "orangegris": x = 40: y = 15
Case "orangevert": x = 40: y = 35
Case "orangebleu": x = 40: y = 34
Case "orangejaune": x = 40: y = 36
Case "orangerien": x = 40: y = none
End Select
For Each o In Selection
If o.Interior.ColorIndex = x Then o.Interior.ColorIndex = y
Next
End Sub



A voir également:

2 réponses

ThauTheme Messages postés 1442 Date d'inscription   Statut Membre Dernière intervention   160
 
Bonjour UsulArrakis, bonjour le forum,

Peut-être en déclarant la variable o au début :
Dim o As Range

0
Utilisateur anonyme
 
Bonjour UsulArrakis, bonjour le forum,

Tu dois remplacer tous les « y = none » par : « y = xlNone ».

Si ton problème est réglé, merci d'aller en haut de page
pour cliquer sur « Marquer comme résolu ».

Cordialement. :)
0
UsulArrakis Messages postés 7405 Date d'inscription   Statut Contributeur Dernière intervention   3 190
 
Bonjour albkan
merci pour ta réponse
je vais tester et je reviens dire ce que ça donne
0
Utilisateur anonyme > UsulArrakis Messages postés 7405 Date d'inscription   Statut Contributeur Dernière intervention  
 
 
Bonjour UsulArrakis,

À tout hasard, je précise que pour xlNone, entre le x et le N,
ce n'est pas un i majuscule mais un L minuscule.  ;)

Car en VBA, le début des noms de constantes Excel est xl (pour Excel).

Si ça a marché, n'oublies pas d'aller en haut de page pour
cliquer sur le lien « Marquer comme résolu ».

Cordialement.  :)
 
0