Copier une ligne selon conditions

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

Salut Rem,

plutôt ainsi si je suis bien...

If Cells(x, 2) =

et non

If Cells(2, x) =

Vérifier et adapter la donnée AGIRENT ! Integer ou string ?

  • integer ? ->
  • string ? ->
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'
Application.ScreenUpdating = False
'
For x = 1 To Range("B" & Rows.Count).End(xlUp).Row
    With Worksheets("SYNTHESE")
        If Cells(x, 2) = "AGIRENT" Then
            iRow = .Range("A" & Rows.Count).End(xlUp).Row + 1
            .Range("A" & iRow & ":R" & iRow).Value = Range("A" & x & ":R" & x).Value
        End If
    End With
Next
'
Application.ScreenUpdating = True
'
End Sub

A+

Rechercher des sujets similaires à "copier ligne conditions"