Copier des lignes

- - Dernière réponse : via55
Messages postés
11348
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
17 novembre 2019
- 10 nov. 2019 à 15:56
Bonjour,

Je cherche à faire unprograme qui copirais la ligne d'une feuille excel sur une autres feuille si une case de cette ligne contient une valeurs spécifique, voici mon code que j'ai tenté:

Dim i As Integer
Dim plage As Range

For i = 1 To 100

Set plage = Range("B1:B100")


With Worksheets("SYNTHESE")

If (plage.Cells(2, i).Value = AGIRENT) Then Worksheets("1-5 MESURES ET CONTROLES").Range("A" & i & ":R" & i).Copy .Cells(.Rows.Count, "A").End(xlUp)(2)

End With

Next i

Seulement j'ai l'impression que mon code ne prend pas en compte le IF care il copie toute les ligne de 1 à 100 quelqu'un aurrait-il une idée de la raison du problème ?

Merci à vous,
Très belle journée à vous

Configuration: Windows / Chrome 78.0.3904.70
Afficher la suite 

1 réponse

Messages postés
11348
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
17 novembre 2019
1508
0
Merci
Bonjour

- ton with n'est pas utilisé puisque tu n'as pas mis de point devant plage
- le set plage est inutile tu peux le mettre dans le with
- AGIRENT n'est pas entre guillemets pour être assimilé à du texte

Essaie :
With Worksheets("SYNTHESE").Range("B1:B100")

If .Cells(2, i).Value =" AGIRENT" then ....

Cdlmnt
Via
Commenter la réponse de via55