Message : la méthode Range de l'objet global a échoué...
Résolu
#jquem#
Messages postés
76
Statut
Membre
-
#jquem# Messages postés 76 Statut Membre -
#jquem# Messages postés 76 Statut Membre -
Bonjour,
j'ai déplacé un tableau avec des macros dans un autre fichier excel. j'ai repris tous les formats, toutes les macros, en bref, TOUT. Ca fonctionnait parfaitement dans le fichier initial, maintenant, j'ai ce message qui apparait… je n'y comprends rien. Quelqu'un pourrait-il m'aider.
Voila la macro :
Sub Filtredatas()
Range("B11:B13").Select
Sheets("Tableaudebord").Range("SOURCES").AdvancedFilter Action:=xlFilterCopy _
, CriteriaRange:=Range("'Tableaudebord'!Criteria"), CopyToRange:=Range("'Tableaudebord'!Extract"), Unique:=False
Range("C6").Select
End Sub
Merci pour votre aide.
j'ai déplacé un tableau avec des macros dans un autre fichier excel. j'ai repris tous les formats, toutes les macros, en bref, TOUT. Ca fonctionnait parfaitement dans le fichier initial, maintenant, j'ai ce message qui apparait… je n'y comprends rien. Quelqu'un pourrait-il m'aider.
Voila la macro :
Sub Filtredatas()
Range("B11:B13").Select
Sheets("Tableaudebord").Range("SOURCES").AdvancedFilter Action:=xlFilterCopy _
, CriteriaRange:=Range("'Tableaudebord'!Criteria"), CopyToRange:=Range("'Tableaudebord'!Extract"), Unique:=False
Range("C6").Select
End Sub
Merci pour votre aide.
A voir également:
- La méthode range de l'objet global a échoué
- Recuperer message whatsapp supprimé - Guide
- Message supprimé whatsapp - Guide
- Message absence thunderbird - Guide
- Epingler un message whatsapp - Accueil - Messagerie instantanée
- Message du pere noel gratuit whatsapp - Accueil - Messagerie instantanée
9 réponses
Bonjour,
Je l'ai déjà fait... est ce que je peux vous transmettre mon fichier ?
Je l'ai déjà fait... est ce que je peux vous transmettre mon fichier ?
Re bonjour,
J'ai normalement tout recréé... tout vérifié; rien n'y fait...
Je te passe mon fichier via mon-partage.fr
Ce document s'ouvre automatiquement sur un formulaire. Ce qui me pose problème est le filtre de l'onglet "MARCHES".
Pour fermer ce formulaire, ne pas aller sur "Quitter", cela enregistre et ferme le fichier... il faut cliquer sur le petit logo en bas à gauche "V". D'ailleurs existe-t-il une formule pour mettre un code de sécurité pour bloquer l'accès aux infos quand on clique sur ce "V" ?
https://mon-partage.fr/f/xAOEPr6h/
J'ai mis une validation de partage jusqu'au 14 pour sécuriser un minimum ce fichier.
Peux tu le regarder stp ? je suis certain que tu as un œil plus expert que le mien.
Merci par avance
J'ai normalement tout recréé... tout vérifié; rien n'y fait...
Je te passe mon fichier via mon-partage.fr
Ce document s'ouvre automatiquement sur un formulaire. Ce qui me pose problème est le filtre de l'onglet "MARCHES".
Pour fermer ce formulaire, ne pas aller sur "Quitter", cela enregistre et ferme le fichier... il faut cliquer sur le petit logo en bas à gauche "V". D'ailleurs existe-t-il une formule pour mettre un code de sécurité pour bloquer l'accès aux infos quand on clique sur ce "V" ?
https://mon-partage.fr/f/xAOEPr6h/
J'ai mis une validation de partage jusqu'au 14 pour sécuriser un minimum ce fichier.
Peux tu le regarder stp ? je suis certain que tu as un œil plus expert que le mien.
Merci par avance
dans l'onglet Tableaudebord, je ne vois pas de plage nommée Criteria ni Extract.
il me semble donc inévitable que l'instruction suivante se plante:
il me semble donc inévitable que l'instruction suivante se plante:
Sheets("Tableaudebord").Range("SOURCES").AdvancedFilter Action:=xlFilterCopy _ , CriteriaRange:=Range("'Tableaudebord'!Criteria"), CopyToRange:=Range("'Tableaudebord'!Extract"), Unique:=False
Comment dois-je faire pour les créer ?
Je t'envoie le tableau "Source", celui que j'ai voulu transférer.
Le filtre sur celui-ci fonctionne normalement. J'avoue être un peu perdu...
https://mon-partage.fr/f/XdHPPoyk/
Merci
Je t'envoie le tableau "Source", celui que j'ai voulu transférer.
Le filtre sur celui-ci fonctionne normalement. J'avoue être un peu perdu...
https://mon-partage.fr/f/XdHPPoyk/
Merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
C'est moi qui ai fait les deux.
J'ai juste voulu regrouper dans un seul fichier avec un formulaire à onglets trois fichiers que j'avais fait auparavant.
J'ai retiré au fur et à mesure des formules dans le fichier initial, qui alourdissaient ce dernier. Tant que les macros marchaient, je continuais. D'où peut-être les différences entre les deux fichiers...
Pour être honnête, je suis une "buse" en bureautique, je me forme au fur et à mesure que je fais les choses. J'ai peur que mes connaissances touchent leurs limites... c'est pour cela que je finis par demander de l'aide.
Crois tu qu'il est possible quand même de trouver une solution ?
J'ai juste voulu regrouper dans un seul fichier avec un formulaire à onglets trois fichiers que j'avais fait auparavant.
J'ai retiré au fur et à mesure des formules dans le fichier initial, qui alourdissaient ce dernier. Tant que les macros marchaient, je continuais. D'où peut-être les différences entre les deux fichiers...
Pour être honnête, je suis une "buse" en bureautique, je me forme au fur et à mesure que je fais les choses. J'ai peur que mes connaissances touchent leurs limites... c'est pour cela que je finis par demander de l'aide.
Crois tu qu'il est possible quand même de trouver une solution ?
"Tant que les macros marchaient, je continuais."
Prenais-tu une copie des fichiers avant de continuer? Ne suffit-il pas alors de retourner à la dernière copie?
Sinon, ne peux-tu pas défaire les changements que tu as faits après la dernière verification?
Sinon, une solution serait de recommencer le regroupement de façon plus prudente et plus organisée.
Je suis étonné par ta question "comment créer une plage nommée": n'en as-tu pas déjà créé beaucoup dans ces fichiers?
Sais-tu où doivent se trouver les deux plages nommés manquantes?
Prenais-tu une copie des fichiers avant de continuer? Ne suffit-il pas alors de retourner à la dernière copie?
Sinon, ne peux-tu pas défaire les changements que tu as faits après la dernière verification?
Sinon, une solution serait de recommencer le regroupement de façon plus prudente et plus organisée.
Je suis étonné par ta question "comment créer une plage nommée": n'en as-tu pas déjà créé beaucoup dans ces fichiers?
Sais-tu où doivent se trouver les deux plages nommés manquantes?
Bonjour,
J'ai toujours le fichier initial, bien sur.
Pour les plages de données qui posent problème, elles sont pour moi dans l'onglet "Tableaudebord" et sont nommées "Critères" et "SOURCES".
J'ai toujours le fichier initial, bien sur.
Pour les plages de données qui posent problème, elles sont pour moi dans l'onglet "Tableaudebord" et sont nommées "Critères" et "SOURCES".
Ça avance ! Déjà, ça ne plante plus... plus de débogage !
J'ai changé les plages dans la formule, j'ai modifié en utilisant "SOURCES", "Critères" et "Extraites".Ça donne cela :
Sub Filtredatas()
Range("B11:B13").Select
Sheets("Tableaudebord").Range("SOURCES").AdvancedFilter Action:=xlFilterCopy _
, CriteriaRange:=Range("'Tableaudebord'!Critères"), CopyToRange:=Range("'Tableaudebord'!Extraites"), Unique:=False
Range("C6").Select
End Sub
Par contre, ça ne filtre pas et ne donne aucun résultat. La macro qui appelle Filtredatas fonctionne bien, on peut le,constater sur le tableau Excel lors du clic sur le formulaire.
J'ai changé les plages dans la formule, j'ai modifié en utilisant "SOURCES", "Critères" et "Extraites".Ça donne cela :
Sub Filtredatas()
Range("B11:B13").Select
Sheets("Tableaudebord").Range("SOURCES").AdvancedFilter Action:=xlFilterCopy _
, CriteriaRange:=Range("'Tableaudebord'!Critères"), CopyToRange:=Range("'Tableaudebord'!Extraites"), Unique:=False
Range("C6").Select
End Sub
Par contre, ça ne filtre pas et ne donne aucun résultat. La macro qui appelle Filtredatas fonctionne bien, on peut le,constater sur le tableau Excel lors du clic sur le formulaire.
Ça y est, j'ai trouvé. Finalement, il restait un module dans lequel il y avait encore des bribes de macro "Filtredatas" (ce qui en faisait un doublon).
Merci pour votre aide.
Dernière question : doit-on mettre toutes les infos sur la même feuille ? Dans mon formulaire, deux pages sont liées à "Tableau de bord" et elles fonctionnent que qd la feuille est active. Pour l'autre page du formulaire, elle est liée à "Tableaudebord" , c'est la même chose... d'où cette question.
Encore merci.
Cordialement
Merci pour votre aide.
Dernière question : doit-on mettre toutes les infos sur la même feuille ? Dans mon formulaire, deux pages sont liées à "Tableau de bord" et elles fonctionnent que qd la feuille est active. Pour l'autre page du formulaire, elle est liée à "Tableaudebord" , c'est la même chose... d'où cette question.
Encore merci.
Cordialement
la réponse à ta question est, en général, "non".
je vois deux éléments suspects dans le bout de code que tu as partagé. ce ne sont pas de bonnes pratiques, et c'est souvent source d'erreur
- tu écris "range" sans préciser de quelle feuille il s'agit
- tu fais Select
Je recommande aussi d'ajouter "option explicit" en début de chaque module.
je vois deux éléments suspects dans le bout de code que tu as partagé. ce ne sont pas de bonnes pratiques, et c'est souvent source d'erreur
- tu écris "range" sans préciser de quelle feuille il s'agit
- tu fais Select
Je recommande aussi d'ajouter "option explicit" en début de chaque module.
Merci beaucoup pour ces conseils que j'ai bien notés. Tout "roule" désormais.
Sauf une histoire de remplissage d'une seule cellule à partir de 6 listes différentes et apparentes à partir d'une liste permettant de choisir une de ces 6.
J'ai posé la question sur CCM, mais je n'ai aucune réponse... c'est pourquoi, je te la pose.
Pourrais-tu regarder s'il te plait, le descriptif ci dessous ?
Je souhaite remplir une cellule (AI) via une combobox.
J'ai 6 combo différentes. je les rend apparentes unitairement après avoir fait le choix d'une de ces dernières dans une autre combo.
Mon codage n'est pas bon et n'accepte que les valeurs d'une seule liste, en l'occurence la dernière dans le codage.
Private Sub BtnAjout_Click()
Dim g As Integer
g = Range("AH" & Rows.Count).End(xlUp).Row
Range("AH" & g + 1).Value = ComboBox6
Range("AI" & g + 1).Value = ComboBox7
Range("AI" & g + 1).Value = ComboBox14
Range("AI" & g + 1).Value = ComboBox17
Range("AI" & g + 1).Value = ComboBox16
Range("AI" & g + 1).Value = ComboBox15
Range("AI" & g + 1).Value = ComboBox18
Range("AJ" & g + 1).Value = ComboBox8
Range("AK" & g + 1).Value = ComboBox9
Range("AL" & g + 1).Value = TextBox2
Range("AM" & g + 1).Value = ComboBox12
Range("AN" & g + 1).Value = ComboBox10
Range("AO" & g + 1).Value = TextBox1
'Remet toutes les fenêtres des infos à O après saisie et click (FORMULE VALIDE)
ComboBox7 = ""
ComboBox8 = ""
ComboBox9 = ""
ComboBox10 = "-"
ComboBox14 = ""
ComboBox15 = ""
ComboBox16 = ""
ComboBox18 = ""
ComboBox18 = ""
TextBox1 = "-"
TextBox2 = "-"
MsgBox "Les informations saisies ont bien été enregistrées. Merci."
End Sub
Les combo concernées sont les 7-14-15-16-17-18
Je pense qu'elles sont "lues" l'une après l'autre et que la dernière efface l'avant dernière et ainsi de suite...
Quelqu'un pourrait-il corriger ce défaut afin que la cellule puisse récupérer par exemple la valeur de la combo16 si cette dernière a été choisie?
Merci beaucoup
Sauf une histoire de remplissage d'une seule cellule à partir de 6 listes différentes et apparentes à partir d'une liste permettant de choisir une de ces 6.
J'ai posé la question sur CCM, mais je n'ai aucune réponse... c'est pourquoi, je te la pose.
Pourrais-tu regarder s'il te plait, le descriptif ci dessous ?
Je souhaite remplir une cellule (AI) via une combobox.
J'ai 6 combo différentes. je les rend apparentes unitairement après avoir fait le choix d'une de ces dernières dans une autre combo.
Mon codage n'est pas bon et n'accepte que les valeurs d'une seule liste, en l'occurence la dernière dans le codage.
Private Sub BtnAjout_Click()
Dim g As Integer
g = Range("AH" & Rows.Count).End(xlUp).Row
Range("AH" & g + 1).Value = ComboBox6
Range("AI" & g + 1).Value = ComboBox7
Range("AI" & g + 1).Value = ComboBox14
Range("AI" & g + 1).Value = ComboBox17
Range("AI" & g + 1).Value = ComboBox16
Range("AI" & g + 1).Value = ComboBox15
Range("AI" & g + 1).Value = ComboBox18
Range("AJ" & g + 1).Value = ComboBox8
Range("AK" & g + 1).Value = ComboBox9
Range("AL" & g + 1).Value = TextBox2
Range("AM" & g + 1).Value = ComboBox12
Range("AN" & g + 1).Value = ComboBox10
Range("AO" & g + 1).Value = TextBox1
'Remet toutes les fenêtres des infos à O après saisie et click (FORMULE VALIDE)
ComboBox7 = ""
ComboBox8 = ""
ComboBox9 = ""
ComboBox10 = "-"
ComboBox14 = ""
ComboBox15 = ""
ComboBox16 = ""
ComboBox18 = ""
ComboBox18 = ""
TextBox1 = "-"
TextBox2 = "-"
MsgBox "Les informations saisies ont bien été enregistrées. Merci."
End Sub
Les combo concernées sont les 7-14-15-16-17-18
Je pense qu'elles sont "lues" l'une après l'autre et que la dernière efface l'avant dernière et ainsi de suite...
Quelqu'un pourrait-il corriger ce défaut afin que la cellule puisse récupérer par exemple la valeur de la combo16 si cette dernière a été choisie?
Merci beaucoup