Bonjour,
Je souhaite sélectionner une plage de données, pour cela j'utilise ce code :
Sub Bouton1_Cliquer() Dim dernligne As Integer, derncolonne As Integer, ws As Worksheet Dim maplage As Range Set ws = Sheets("Source") 'dernière ligne colonne A dernligne = ws.Range("A" & Rows.Count).End(xlUp).Row ' dernière colonne ligne 1 derncolonne = ws.Cells(1, Cells.Columns.Count).End(xlToLeft).Column Set maplage = Range(Cells(1, 1), Cells(dernligne, derncolonne)) ws.maplage.Select End Sub
La feuille Source est la feuille dans laquelle sont stockés mes données, ces dernières proviennent d'une exportation sur excel d'un outil décisionnel. Le problème est que VBA affiche comme erreur
"Erreur de compilation
Membre de méthode ou de données introuvable"
Ma macro est relié à un bouton sur une feuille ou je stocke mes boutons
Pouvez-vous s'il vous plait m'expliquez mon erreur ?
Cordialement.
Marsh
NOVEMBER 9, 2013 AT 9:15 PM
Bonjour,Tu as fait une petite erreur de syntaxe à la dernière ligne.
En effet, tu fais appel au membre "maplage" depuis ta Worksheet (ws) alors qu'il s'agit d'un membre de la fonction.
La correction à apporter est simplement de retirer ws, comme suit :
Cordialement,
FlawTECH
fhppbpibapeh-9fpoh
Ok, le clavier fonctionne, parfait.
Dire « Merci » 1
Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CommentCaMarche
réponses:
auteur on
auteur on 9 juil. 2018 à 15:17
FlawTECH,
Merci pour ta réponse, l'erreur n'est plus.
Mais maintenant quand je clic sur mon bouton, je sélectionne toute la plage de la feuille où est mon bouton, alors que je souhaite utiliser la sélection "maplage" dans la feuille "Source".
Peux-tu me proposer une solution à mon problème s'il te plait ?
Cordialement
auteur on Modifié le 9 juil. 2018 à 16:47
Re,
Il te suffirait d'"activer" la feuille avant de sélectionner le range.
Par contre, si ça te sélectionnait un range dans ta feuille active au lieu de te donner l'erreur 1004, c'est que ton code a changé, vérifie bien que tu sélectionnes la feuille "Source" avant.
Pour activer la feuille, il suffit d'ajouter ceci à la fin :
Cordialement,
FlawTECH
auteur on 9 juil. 2018 à 16:11
Re,
Effectivement quand je met ce code cela m'affiche l'erreur 1004. Je ne comprends pas pourquoi le code ne fonctionne pas. J'ai bien vérifié que je sélectionne la feuille "Source" avant.
Cordialement,
auteur on Modifié le 9 juil. 2018 à 16:47
Re,
J'ai testé à l'instant, peu importe la feuille sélectionnée, je suis redirigé vers "Source" et la selection est correcte.
Je te remets le code corrigé, tu as peut-être fait une erreur sans le vouloir.
Cordialement,
FlawTECH
auteur on Modifié le 9 juil. 2018 à 16:38
Re,
J'ai repris ton code et cela ne marche toujours pas lorsque je clic sur le bouton. Cela marche uniquement quand je suis dans la feuille "Source" et que je lance le problème via Virtual Basic. Peut-être est ce du à une option qui a été coché par hasard sur Excel/VBA ? C'est vraiment bizarre parce que ton code parait cohérent et clair. Et, à vrai dire avant de faire la démarche d'aller sur un forum pour avoir de l'aide j'avais déjà essayer cette syntaxe.
Cordialement,
auteur on Modifié le 9 juil. 2018 à 16:43
Re,
Peut-être as-tu lié ton bouton à la mauvaise macro ?
Pour être sûr, place-toi dans une autre feuille que "Source" et essaye de lancer le code directement depuis l'éditeur VBA en plaçant ton curseur dans la fonction (clique sur le bouton avec une fleche verte indiquant la droite pour exécuter le code).
Cordialement,
FlawTECH
auteur on 9 juil. 2018 à 16:56
Re,
Je viens d'essayer à l'instant et toujours l'erreur 1004 qui s'affiche.
Cordialement,
auteur on Modifié le 9 juil. 2018 à 17:08
Re,
Juste pour éliminer certaines pistes, la macro se situe bien dans la feuille "Source" ? Voir dans l'éditeur, la barre de titre de la fenêtre intérieure est l'emplacement de ladite macro.
Sinon, il faudra en effet effectuer quelques modifications.
auteur on 9 juil. 2018 à 17:21
Re,
Non, la macro se trouve dans "module 1", ce module est dans le fichier Excel concerné.