Anomalie dans une macro excel toute simple [Fermé]

Signaler
Messages postés
7395
Date d'inscription
vendredi 28 mars 2003
Statut
Contributeur
Dernière intervention
27 octobre 2020
-
 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



2 réponses

Messages postés
1412
Date d'inscription
mardi 21 octobre 2014
Statut
Membre
Dernière intervention
9 mars 2021
149
Bonjour UsulArrakis, bonjour le forum,

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


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. :)
Messages postés
7395
Date d'inscription
vendredi 28 mars 2003
Statut
Contributeur
Dernière intervention
27 octobre 2020
3 117
Bonjour albkan
merci pour ta réponse
je vais tester et je reviens dire ce que ça donne
Utilisateur anonyme >
Messages postés
7395
Date d'inscription
vendredi 28 mars 2003
Statut
Contributeur
Dernière intervention
27 octobre 2020

 
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.  :)