Copier des lignes

Fermé
REm - 10 nov. 2019 à 12:30
via55 Messages postés 14477 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 3 octobre 2024 - 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
A voir également:

1 réponse

via55 Messages postés 14477 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 3 octobre 2024 2 729
10 nov. 2019 à 15:56
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
0