Macro

Fermé
wallhqck Messages postés 37 Date d'inscription vendredi 3 mai 2013 Statut Membre Dernière intervention 11 février 2017 - 14 oct. 2013 à 20:49
wallhqck Messages postés 37 Date d'inscription vendredi 3 mai 2013 Statut Membre Dernière intervention 11 février 2017 - 15 oct. 2013 à 21:21
Bonsoir à tous,

Voila j'ai fais quelques recherches sur internet pour trouver une solution mais je n'y arrive vraiment pas (je débute en macro donc c'est la galère)

Voila mon problème, je souhaite faire une macro qui vérifie une condition et qui copie colle une ligne sur une autre page excel.

En gros, sur une page excel, j'ai
colone A : Reférence
colone b : description produit
colone c : pays etc etc
et colone i : j'ai ma condition (soit "check" ou "PB")

En gros je souhaite que ma macro vérifie la colonne "i" et que si la cellule affiche "PB", que la ligne qui correspond à toutes les données soit automatique collée sur une autre page excel, et ainsi de suite jusqu'à la fin (environ 1500 lignes à traiter).

Un grand merci d'avance !

Cordialement.
wallHqck
A voir également:

10 réponses

via55 Messages postés 14495 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 7 novembre 2024 2 735
14 oct. 2013 à 21:01
Bonsoir

Dans un cas comme cela tu peux utiliser l'enregistreur de macro pour obtenir ce que tu souhaites :

1 tu mets en route l'enregistreur de macro
2 tu selectionnes toute ta plage à trier de la 1ere feuille
3 tu fais appliquer un filtre sur la colonne i avec critere PB
4 tu selectionnes toute la plage ainsi filtrée et tu fais copier
5 tu crées une nouvelle feuille et tu colles ta copie avec collage spécial en cochant valeurs uniquement
6 tu arrêtes l'enregistrement

Ta macro est crée

Cdlmnt
0
Bonjour

Sans model dur

Voila la macro a toi de la mette en forme

Sub TestCopy()
Lig = 2
For L = 2 To Range("A" & Rows.Count).End(xlUp).Row
If Range("I" & L).Value = "PB" Then
Rows(L).Copy
F06.Range("A" & Lig).PasteSpecial xlPasteValues
Lig = Lig + 1
End If
Next
End Sub

A+

Maurice
0
wallhqck Messages postés 37 Date d'inscription vendredi 3 mai 2013 Statut Membre Dernière intervention 11 février 2017
14 oct. 2013 à 23:50
Merci :) Je vais tester ça demain au boulot et je reviens vers vous

Bonne soirée !
0
wallhqck Messages postés 37 Date d'inscription vendredi 3 mai 2013 Statut Membre Dernière intervention 11 février 2017
15 oct. 2013 à 13:21
Apres quelques esaies je n'y arrive toujours pas; en gros j'ai
Référence description blabla blabla blabla blabla blabla Prix contrôle Prix
Ref 1 description 1 blabla blabla blabla blabla blabla 2.00 € ok 2.00 €
Ref 2 description 2 blabla blabla blabla blabla blabla 3.00 € ok 3.00 €
Ref 3 description 3 blabla blabla blabla blabla blabla 4.00 € PB 6.00 €
Ref 4 description 4 blabla blabla blabla blabla blabla 5.00 € PB 4.00 €
Ref 5 description 5 blabla blabla blabla blabla blabla 6.00 € ok 6.00 €
Ref 6 description 6 blabla blabla blabla blabla blabla 7.00 € ok 7.00 €
Ref 7 description 7 blabla blabla blabla blabla blabla 8.00 € PB 9.00 €
Ref 8 description 8 blabla blabla blabla blabla blabla 9.00 € ok 9.00 €
Ref 9 description 9 blabla blabla blabla blabla blabla 10.00 € PB 11.00 €
Ref 10 description 10 blabla blabla blabla blabla blabla 11.00 € PB 10.00 €

Donc disons que ceci se trouve une la feuille "Pays"

Je souhaite que la macro repère les "PB" dans la colone "I" et qu'elle me colle toutes les lignes avec un "PB" dans une nouvelle feuille "SYNTHESE".
Je veux avoir un bouton sur ma feuille "SYNTHESE" pour que quand je clique dessus, toutes les erreurs s'affichent sur cette feuille

Référence : A6:A15
Identification PB : I6:I15

Désolé je suis vraiment pas doué.

Cordialement
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bonjour

donne ton fichier excel pour voir
ca serat plus simple

A+

Maurice
0
wallhqck Messages postés 37 Date d'inscription vendredi 3 mai 2013 Statut Membre Dernière intervention 11 février 2017
15 oct. 2013 à 14:00
comment le joindre à la réponse ? :O
0
Re

Pour communiquer ton classeur tu le télécharges sur www.cjoint.com et tu mets ici le lien obtenu.

A+

Maurice
0
wallhqck Messages postés 37 Date d'inscription vendredi 3 mai 2013 Statut Membre Dernière intervention 11 février 2017
15 oct. 2013 à 19:09
0
Bonjour

Voila ta macro

http://cjoint.com/?3Jpu5tBtRsJ

A tester bien sur
A+

Maurice
0
wallhqck Messages postés 37 Date d'inscription vendredi 3 mai 2013 Statut Membre Dernière intervention 11 février 2017
15 oct. 2013 à 21:21
Un grand merci, elle marche parfaitement je vais pouvoir l'adapter à mes fichiers.

Pour m'aider et pour ma culture générale en macro peux-tu m'expliquer les étapes avec le code ?

Lig = 7
'Faire le copier/coller des ligne à partir de la ligne 7 ?

Rows(Lig & ":" & Rows.Count).Delete
'?

For L = 6 To Feuil1.Range("A" & Rows.Count).End(xlUp).Row
'?

If Feuil1.Range("I" & L).Value = "PB" Then
' Si la colone I de la feuille 1 affiche PB

Feuil1.Rows(L).Copy
'Sélectionne la ligne et la copie ?

Range("A" & Lig).PasteSpecial xlPasteValues
'Selectionne à partir de A et jusqu'a la fin de la ligne ?

Lig = Lig + 1
'Copie sur la ligne d'en dessous ?

End If
Next

Application.CutCopyMode = False
'?

Application.ScreenUpdating = False
'?

Range("A1").Select
'Pourquoi sélectionner A1 ensuite ?

End sub

Je te remercie

Cordialement
0