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

VBA: sélection données

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

M

Mimix

Guest
Bonsoir,

Je souhaite sélectionner et copier les lignes d'un tableau en fonction de la valeur d'une cellule spécifiée puis les coller sur une autre feuille.
Après diverses recherches sur Internet, j'ai adapté une procédure qui marche parfaitement sur un tableau test.

Code:
Sub SelectCellulesValeurDeterminee()
Worksheets("Données Janvier 2009").Activate
Range("A1").Select
For Each cll In ActiveCell.CurrentRegion
      If cll.Value = "MARSEILLE" Or cll.Value = "BORDEAUX" Then Plg = Plg & cll.Row() & ":" & cll.Row() & ","
      If cll.Value = "MARSEILLE" Or cll.Value = "BORDEAUX" Then cll.Interior.Color = vbBlue
Next cll
If Len(Plg) > 0 Then Range(Left(Plg, Len(Plg) - 1)).Select
Selection.Copy Worksheets("REGION SUD").[A2]

End Sub

Lorsque j'ai voulu l'appliquer sur mon cas et fait les changements nécessaires, cela ne fonctionne plus de tout: la procédure n'arrive pas à sélectionner les lignes désirées et dans le nouveau tableau, elle se contente de copier la cellule A1 sur A2.
J'ai beau vérifier, cela ne marche pas: s'agit-il d'un problème de données par hasard? En effet, la feuille que j'exploite est une extraction.

Merci par avance pour votre aide
 
Re : VBA: sélection données

Bonjour Mimix,

comprends pas trop ton code et ne suis pas certain du résultat que tu attends... un petit tout fichier en pièce jointe, représentant uniquement le problème posé, nous permettrait de t'aider plus facilement...

bonne journée
@+
 
Re : VBA: sélection données

Bonjour le fil 🙂,
Code:
ActiveCell.CurrentRegion
agrandit la sélection jusqu'à la première ligne vide et la première colonne vide.
N'aurais-tu pas des lignes vides dans ton extraction ?
Bon courage 😎
 
Re : VBA: sélection données


Bonjour JNP,

J'ai des cellules vides dans mon extraction mais lorsque je lance cette ligne de code dans une autre procédure, elle sélectionne pourtant bien tout mon tableau
 
Re : VBA: sélection données

Re 🙂,
J'ai des cellules vides dans mon extraction mais lorsque je lance cette ligne de code dans une autre procédure, elle sélectionne pourtant bien tout mon tableau
Je parle de ligne vide... Si le tableau est entouré par une ligne vide et une colonne vide, la sélection s'arrête là 🙄...
Bon courage 😎
 
Re : VBA: sélection données

Re 🙂,Je parle de ligne vide... Si le tableau est entouré par une ligne vide et une colonne vide, la sélection s'arrête là 🙄...
Bon courage 😎

Bonjour,

Non, il n'y a pas de lignes ou colonnes vides.

J'ai fait plusieurs essais:
- En copiant une partie du tableau sur un autre classeur: ça ne fonctionne pas: la cellule A1 d'un onglet est copiée et collée sur la cellule A2.
- J'ai recopié une ligne "manuellement" sur un classeur et je l'ai dupliquée en changeant quelques cellules: là ça fonctionne...

Je trouve cela vraiment bizarre....
 
Re : VBA: sélection données

Re 🙂,
Un bête doute
Code:
Sub SelectCellulesValeurDeterminee()
Worksheets("Données Janvier 2009").Activate
Range("A1").Select
For Each cll In ActiveCell.CurrentRegion
      If cll.Value = "MARSEILLE" Or cll.Value = "BORDEAUX" Then Plg = Plg & cll.Row() & ":" & cll.Row() & ","
      If cll.Value = "MARSEILLE" Or cll.Value = "BORDEAUX" Then cll.Interior.Color = vbBlue
[B][COLOR=red]If Len(Plg) > 0 Then Range(Left(Plg, Len(Plg) - 1)).Copy Works[COLOR=red]heets[/COLOR][/COLOR][COLOR=red]("REGION SUD").[A2][/COLOR][/B]
[COLOR=red][B]Next cll[/B][/COLOR]
End Sub
me paraitrait plus logique 😉...
A + 🙂
 
Re : VBA: sélection données


Cela ne revient pas à la même chose?
J'ai néanmoins fait le changement mais le problème persiste, cela reste toujours un mystère!
Merci en tout cas JNP d'avoir essayé de m'aider
 
Re : VBA: sélection données

Re 🙂,
Cela ne revient pas à la même chose?
Si, j'avais pas vu la virgule, et je me méfie des Select 😛...
J'avais bien dit un "bête" doute 😀...
Est-ce que Marseille et Bordeaux sont bien en majuscule dans les cellules ?
Est-ce qu'il n'y aurait pas des blancs après dans la cellule ?
Teste
Code:
     If cll.Value Like "*MARSEILLE*" Or cll.Value Like "*BORDEAUX*" Then Plg = Plg & cll.Row() & ":" & cll.Row() & ","
      If cll.Value Like "*MARSEILLE*" Or cll.Value Like "*BORDEAUX*" Then cll.Interior.Color
A+ 😎
 
Re : VBA: sélection données


Bonjour,

Effectivement, il y avait des espaces et la sélection se fait bien mais pas la copie.
Maintenant , j 'ai un autre problème: lorsque j'exécute la macro, j'ai une erreur: "La méthode Range de l'objet global a échoué" sur cette ligne:
Code:
If Len(Plg) > 0 Then [COLOR="Red"]Range(Left(Plg, Len(Plg) - 1)).Select[/COLOR]
Selection.Copy Worksheets("REGION SUD").[A2]

J'ai tout mis sur la même ligne mais là, il me met "l'élément portant sur ce nom est introuvable":
Code:
[COLOR="Red"]If Len(Plg) > 0 Then Range(Left(Plg, Len(Plg) - 1)).Copy Worksheets("PARITEL").[A2][/COLOR]
 
Dernière modification par un modérateur:
Re : VBA: sélection données

Re 🙂,
Peut-être
Code:
[COLOR=red]Worksheets("Données Janvier 2009").[/COLOR][COLOR=black]Range(Left(Plg, Len(Plg) - 1)).Copy Worksheets("PARITEL[/COLOR][COLOR=#ff0000][COLOR=black]")[/COLOR].Range("A2")[/COLOR]
mais comme disais Pierrot en #2, un petit bout de fichier serait bien plus simple pour comprendre le problème...
Bon courage 😎
 
Re : VBA: sélection données


Bonjour JNP,

Merci beaucoup de m'aider!

En fait, sur un autre fichier test (que j'ai mis en pièce jointe), ça marche parfaitement mais lorsque je veux l'adapter à mon cas, ça bloque. Je ne peux pas le mettre en ligne car ce sont des données confidentielles 🙁...
Là, j'ai rajouté le worksheets en début de ligne et j'ai "erreur définie par l'application ou par l'objet l'objet
 

Pièces jointes

Re : VBA: sélection données

Re 🙂,
Certes, mais trouver l'erreur dans un fichier qui marche 😛...
Je ne sais pas quoi te dire 😱...
Tu peux très bien virer les données confidentielles en les remplaçant par des Toto et de 03 03 03 03 03 😉...
Bon courage 😎
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
4
Affichages
586
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
903
Réponses
6
Affichages
737
Réponses
12
Affichages
1 K
G
Réponses
7
Affichages
1 K
gfgghbhg
G
J
Réponses
2
Affichages
743
jui42
J
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…