Effacer des cellules par macro

  • Initiateur de la discussion herve
  • Date de début
H

herve

Guest
Bonjour le forum,

Ce matin, j'ai créé une macro par enregistrement pour effacer le contenu de cellules. elle a parfaitement fonctionné pendant que je l'enregistrais.

Cependant, si je la lance par un bouton (RAZ) que j'ai créé sur une feuille, elle me donne :
"erreur d'exécution 1004, la méthode select de la classe range a echoué"

ci dessous le code créé lors de l'enregistrement.

Private Sub raz_Click()
Sheets("Relevés").Select
Range("a2:C44").Select
Selection.ClearContents
Sheets("Général").Select
End Sub


Quelqu'un comprend-il pourquoi cela ne fonctionne pas en automatique??

Merci de vos réponses

@+ Hervé
 
H

herve

Guest
bonjour, Olivier_HTP

Merci pour ta réponse, mais cela ne fonctionne toujours pas, que le code soit sur la feuille ou dans un module.

J'ai contourné le probleme en incluant ce code sur un bouton dans un USF et là, cela fonctionne...

Merci et bonne journée,

@+ Hervé
 
M

myDearFriend

Guest
Bonjour Hervé, Olivier, le Forum.

Hervé, visiblement ton bouton "raz" ne se situe pas sur la feuille "Relevés", et c'est précisément pour ça que ton code ne fonctionne pas.

Si au lieu de :

Private Sub raz_Click()
Sheets("Relevés").Select
Range("a2:C44").Select
Selection.ClearContents
Sheets("Général").Select
End Sub

Mis comme ça, ton Range("a2:C44"), ne fait pas référence au Range("a2:C4") de la feuille "Relevés", mais de la feuille dans laquelle est placé ton bouton "raz" (Private module d'une feuille ) !

Il te faut donc écrire simplement :

Private Sub raz_Click()
Sheets("Relevés").Range("A2:C44").ClearContents
Sheets("Général").Select
End Sub

Ce qui signifie :
1 - je clique sur le bouton "raz" placé sur une feuille X
2 - j'efface la zone "A2:C44" de la feuille "Relevé"
3 - je sélectionne la feuille "Général"
4 - je quitte cette procédure.

Je pense que c'est ce que voulait dire Olivier, ton code aurait marché s'il était placé dans un module autre qu'un module Privat de feuille (c'est d'ailleurs pourquoi il marche depuis un bouton d'un UserForm).

Cordialement.
Didier
 

Discussions similaires

Statistiques des forums

Discussions
312 361
Messages
2 087 604
Membres
103 604
dernier inscrit
CAROETALEX59