PROBLEME VBA copier ligne avec condition
Fermé
benwares
Messages postés
3
Date d'inscription
jeudi 14 octobre 2010
Statut
Membre
Dernière intervention
15 octobre 2010
-
14 oct. 2010 à 15:33
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 15 oct. 2010 à 18:02
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 15 oct. 2010 à 18:02
A voir également:
- PROBLEME VBA copier ligne avec condition
- Copier une vidéo youtube - Guide
- Excel cellule couleur si condition texte - Guide
- Aller à la ligne excel - Guide
- Hors ligne instagram - Guide
- Vente en ligne particulier - Guide
3 réponses
Ninja94400
Messages postés
14
Date d'inscription
vendredi 21 mars 2008
Statut
Membre
Dernière intervention
18 novembre 2010
1
14 oct. 2010 à 16:35
14 oct. 2010 à 16:35
Bonjour benwares
Je te propose ce code, à adapter en fonction du nom exact de tes onglets etc.
Tiens nous au courant si c'est bien ce que tu cherches !
Je te propose ce code, à adapter en fonction du nom exact de tes onglets etc.
Sub Copier_Ouvert() Dim Cellule_a_copier As Range Dim Fin_Colonne As Range Sheets("A").Select 'Sélectionne ton onglet où sont tes valeurs Set Plage = Range("X2", Range("X2").End(xlDown)) 'Sélectionne toutes les cellules de X2 jusqu'au bout de la colonne For Each Cellule_a_copier In Plage If (Cellule_a_copier.Text = "Ouvert") Then 'Si la celulle contient le texte Sheets("A").Select Rows(Cellule_a_copier.Row).EntireRow.Copy 'Alors on copie Sheets("B").Select 'Sélectionne ton onglet où il faut coller les valeurs Set Fin_Colonne = Range("X65536").End(xlUp) 'On va chercher la dernière ligne renseignée Fin_Colonne.Offset(1, 0).Select 'On se déplace d'une ligne en dessous Rows(ActiveCell.Row).PasteSpecial Paste:=xlPasteValues 'On colle la ligne End If Next End Sub
Tiens nous au courant si c'est bien ce que tu cherches !
lermite222
Messages postés
8702
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 190
14 oct. 2010 à 16:56
14 oct. 2010 à 16:56
Bonjour,
Peut-être un peu plus "conventionnel" ?
Si tu veux, par exemple, faire la même chose mais avec "Fermer" tu change juste la valeur de Comp.
A+
Peut-être un peu plus "conventionnel" ?
Sub copieLigne() Dim LigA As Long, LigB As Long Dim Comp As String 'Pourrait être mis en paramètre dans l'appel de la sub. Comp = "Ouvert" 'Alors supprimer cette ligne LigB = 4 '1ère ligne ou copier With Sheets("Feuil1") For LigA = 1 To .Range("X65536").End(xlUp).Row If .Cells(LigA, "X") = Comp Then .Rows(LigA).Copy Sheets("Feuil2").Rows(LigB) LigB = LigB + 1 End If Next LigA End With End Sub
Si tu veux, par exemple, faire la même chose mais avec "Fermer" tu change juste la valeur de Comp.
A+
benwares
Messages postés
3
Date d'inscription
jeudi 14 octobre 2010
Statut
Membre
Dernière intervention
15 octobre 2010
15 oct. 2010 à 13:35
15 oct. 2010 à 13:35
Merci, j'avoue qu'il y a un petit soucis (mais c'est possible que ce soit de ma faute en mettant le nom des feuilles), mais d'apres ce que je comprends il semble que tu ne tienes pas compte du parametre colonne de la feuille.
Dans tout les cas merci bcp.
A+
Dans tout les cas merci bcp.
A+
Ninja94400
Messages postés
14
Date d'inscription
vendredi 21 mars 2008
Statut
Membre
Dernière intervention
18 novembre 2010
1
15 oct. 2010 à 13:45
15 oct. 2010 à 13:45
Lol c'est vrai que ton code fait plus propre ^_^
Pour te répondre benwares, j'ai appris le VBA sur le tas. J'essaie de m'imaginer ce que j'aurai fais à la mano, et le transcris en code (d'où le fait qu'il ne soit peut-être pas très conventionnel, mais marche :D)
Pour te répondre benwares, j'ai appris le VBA sur le tas. J'essaie de m'imaginer ce que j'aurai fais à la mano, et le transcris en code (d'où le fait qu'il ne soit peut-être pas très conventionnel, mais marche :D)
lermite222
Messages postés
8702
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 190
15 oct. 2010 à 18:02
15 oct. 2010 à 18:02
Re,
Feuil1 c'est ta feuille "A"
Feuil2 c'est ta feuille "B"
Quand à la colonne tu dis que c'est la colonne "X" ? c'est bien ce qui est sur mon code.
A+
Feuil1 c'est ta feuille "A"
Feuil2 c'est ta feuille "B"
Quand à la colonne tu dis que c'est la colonne "X" ? c'est bien ce qui est sur mon code.
A+
15 oct. 2010 à 13:33
Ca marche nikel! merci beaucoup. je sais pas pourquoi mais je comprends la logique de programmation une fois faite mais je n'arrive pas à reussir un programme qui fonctionne.
En tout cas merci bcp!!