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

Erreur 1004, méthode clearContents de la classe Range a échoué

  • Initiateur de la discussion Initiateur de la discussion anto59
  • 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 !

anto59

XLDnaute Junior
Erreur 1004, méthode clearContents de la classe Range a échoué[Résolu]

Bonjour à tous,

J'ai un petit problème sur une ligne de code apparement pas très compliqué.
Sheets("Table").Range("G2:G500").ClearContents

En fait, j'apporte grâce à une requête sql et un userform des données d'une base access dans la colonne G. Et avant de les copier, j'aimerais bien effacé le contenu de la colonne G. Ce qui est bizare, c'est que ce problème ne survient pas la première fois que je clique sur le bouton commande qui fait apparaitre le userform, mais il survient au deuxième clique.
Il y a certainement quelque chose qui s'initialise la première fois et plus après mais je vois pas du tt ce que ca peut etre.

J'ai essayé pas mal de méthode vu sur le forum mais rien ne marche.
Merci d'avance
 
Dernière édition:
Re : Erreur 1004, méthode clearContents de la classe Range a échoué

Bonjour Anto59 🙂,
A mon avis, le problème vient plutôt que tu efface des données dans une connexion SQL (la première fois, la connexion n'existe pas).
Essaie de supprimer ta connexion d'abord
Code:
ActiveWorkbook.Connections("test").Delete
et tu ne devrais plus avoir le problème.
Bonne journée 😎
 
Re : Erreur 1004, méthode clearContents de la classe Range a échoué

Bonjour JNP,
j'ai essayé ton idée mais ca n'a pas l'air de mieux fonctionné.

En fait, pour etre plus precis, j'ai deux listes déroulantes.

Quand l'utilisateur change la valeur de la première liste déroulante, le programme supprime les valeurs de la colonne G et les remplace par la requête associé au choix de la première liste pour ensuite les mettre dans la deuxième liste déroulante.

Quand je lance mon programme la première fois, et que je change plein de fois le choix de la première liste, il efface bien la colonne G pour changer ses valeurs. Pourtant la connexion n'est pas plus fermée que quand je quitte le userform avec un bouton valider ou annuler...
Vu que je débute un peu en programmation j'ai beaucoup de mal avec tout ca.
 
Re : Erreur 1004, méthode clearContents de la classe Range a échoué

Re 🙂,
Ça ne va pas être facile sans un minimum de ton fichier, sachant qu'en plus nous ne pourrons pas exécuter ta requête SQL 😱...
Vois ce que tu peux nous mettre en ligne, sans données confidentielles 😉.
Bon courage 😎
 
Re : Erreur 1004, méthode clearContents de la classe Range a échoué

Oui c'est vrai désolé.
Voilà un essai avec une des fausses données.
Pour l'instant, il n'y a que les listes supplier_compressor et model_compressor (en bas du userform) qui se mette à jour en fonction du premier choix.

La ligne de code se trouve dans le code du userform.
Pour la voir il suffit de faire une premiere validation dans le userform et de le relancer 🙂
 

Pièces jointes

Re : Erreur 1004, méthode clearContents de la classe Range a échoué

Bonjour,

Aurais -tu renomé une listbox car j'ai en permanance un problème d'objet nom trouvé :

Me.List_supplier_Syst_Prop sur le userform je ne trouve que List_Syst_Prop
 
Re : Erreur 1004, méthode clearContents de la classe Range a échoué

Re 🙂,
Sans ta base Access (sans données confidentielles), nous ne pouvons faire aucun test sur ton fichier 😱...
A + 😎
 
Re : Erreur 1004, méthode clearContents de la classe Range a échoué

Bonjour,
pour ce qui est d'activer la feuille, j'ai déjà testé mais sans succès malheureusement.
Et pour le fichier access, il est dans le premier fichier zip que j'ai envoyé appelé essai.zip.
 
Re : Erreur 1004, méthode clearContents de la classe Range a échoué

Bonjour,
je relance le sujet mais est ce que le problème peut venir du fait que le clearcontents s'effectue à l'ouverture du userforme.
Donc le programme ne peut plus aller sur la feuille où je lui demande d'effacer la colonne.
Je me trompe?
Et si j'ai bon, il faut que j'arrive à faire en sorte que la valeur de la liste déroulante ne change pas entre la fermeture et l'ouverture du userforme mais je vois pas trop comment faire.
Merci pour votre aide.
 
Re : Erreur 1004, méthode clearContents de la classe Range a échoué

Bon apparement, c'était bien ce problème là.
J'ai ajouter à la fin de la sub OK_click quelques lignes pour remettre les liste déroulante vide:
list_model_compressor.ListIndex = -1
Et il n'y a plus aucun problème.
Merci à tous
 
- 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

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…