Copier/coller des lignes sous une condition

Résolu
Bonjour,

J'aimerais faire un copier/coller des lignes A7:P7 à A1000:P1000 de la feuille "DM_2014" dans une autre feuille "DM en attente 2014" à partir de la ligne A7:P7 mais uniquement ceux dont les cellules N7 ne contiennent rien.

Comment puis-je le faire ?

J'espère avoir été claire.

Merci de vos aides.

7 réponses

  1. Bonjour,

    Macro à tester

    Sub Copier()
    Dim WsS As Worksheet, WsC As Worksheet
    Dim Ligne As Integer
    Application.ScreenUpdating = False
    Set WsS = Worksheets("DM_2014")
    Set WsC = Worksheets("DM en attente 2014")
    For Ligne = 7 To 1000
    If WsS.Range("N" & Ligne) = "" Then
    WsS.Range("A" & Ligne).Resize(1, 16).Copy WsC.Range("A" & Ligne)
    End If
    Next Ligne
    Set WsC = Nothing: Set WsS = Nothing
    End Sub

    A+
    0
    1. Merci Gyrus de ton aide.

      Malheureusement lorsque je lance la macro il y a un bug. Il me dit :
      "Erreur d'exécution '91'
      Variable objet ou variable de bloc with non définie"
      et il surligne " WsS.Range("A" & Ligne).Resize(1, 16).Copy WsC.Range("A" & Ligne)" en jaune.

      Je ne sais pas ce qu'il se passe, que faire ?

      Merci encore.
      0
      1. Voici un exemple ci-dessous :
        https://www.cjoint.com/?3CBqzoLc4NX

        Bien sûr dans le vrai document il y a d'autres feuilles. Aussi dans le vrai fichier il n'existe pas du tout de macro encore.

        Merci de votre aide.
        0
        1. Il faut écrire
          Set WsC = Worksheets("DM en attente 2014")

          De plus, au vu de ton fichier, je pense que la disposition des lignes collées ne va pas te convenir.
          A te relire.

          A+
          0
          1. C'est à peu près ce que je veux mais effectivement la disposition des lignes ne me convient pas. J'aimerais quelles soient les unes après les autres. Est-ce possible ?

            Merci pour tout.
            0