Erreur 13 VBA, encore elle !

Résolu/Fermé
PseudoVBA Messages postés 3 Date d'inscription lundi 8 avril 2013 Statut Membre Dernière intervention 8 avril 2013 - 8 avril 2013 à 13:16
PseudoVBA Messages postés 3 Date d'inscription lundi 8 avril 2013 Statut Membre Dernière intervention 8 avril 2013 - 8 avril 2013 à 16:02
Bonjour tout le monde.

Je travaille actuellement sur Excel 2003.

Dans le but d'automatiser un maximum mes procédures, je tente d'apprendre un peu de VBA par moi-même, en bossant des tutos trouvés sur le net.

L'un des exercices est d'entrer une valeur négative n'importe où sur une feuille Excel, et d'exécuter la macro suivante, dans le but de colorer en rouge la cellule avec la valeur négative en question.

La macro utilisée pour cela est celle-ci :


Sub nombreNegatif()
If (Selection.Value <0 ) Then

Selection.Font.Color = -16776961

End If

End Sub

Je tape donc une valeur négatif n'importe ou dans la page, j'exécute la macro, et une erreur 13 apparait.

Et je ne parviens pas du tout à comprendre pourquoi...

Je vous remercie de votre lecture et vous souhaite une bonne journée à tous.

4 réponses

ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
Modifié par ccm81 le 8/04/2013 à 15:48
Ta macro fonctionne lorsque la sélection contient une seule cellule
Si tu veux exécuter la macro sur une plage il faut s'y prendre autrement
https://www.cjoint.com/?3DipVLxrMMM

bonne suite
1
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
8 avril 2013 à 14:30
Bonjour,

Chez moi ça fonctionne bien
Essaies quand même avec
Selection.Font.ColorIndex = 3
ou
Selection.Font.Color = RGB(255, 0, 0)

Mais l'erreur vient certainement d'ailleurs
Peux tu envoyer la partie concernée de ton fichier sur cjoint.com et joindre le lien obtenu à ton prochain message

Bonne suite
0
PseudoVBA Messages postés 3 Date d'inscription lundi 8 avril 2013 Statut Membre Dernière intervention 8 avril 2013
Modifié par PseudoVBA le 8/04/2013 à 14:46
Bonjour,

Merci de ta réponse, j'ai testé tes solutions, cela ne fonctionne pas.

Je sais pas si ça peut aider, mais si je me trompe et que la macro est exécutée sur un ensemble de cellules vides, je n'ai pas de messages d'erreur.

Cela viendrait donc d'une compatibilité format de donnée vs programme ?

le document est joint là : https://www.cjoint.com/?CDioQdq3Q6Q
0
PseudoVBA Messages postés 3 Date d'inscription lundi 8 avril 2013 Statut Membre Dernière intervention 8 avril 2013
8 avril 2013 à 16:02
D'accord.

C'est cool les débuts dans un nouveau logiciel, on fait des erreurs toutes bêtes :D

Merci pour le renseignement et bonne journée à vous.
0