IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Copier/Coller de ligne [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de LG-69
    Homme Profil pro
    Analyste statisticien
    Inscrit en
    Juillet 2014
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste statisticien

    Informations forums :
    Inscription : Juillet 2014
    Messages : 162
    Par défaut Copier/Coller de ligne
    Bonjour,

    Je tente de faire une macro toute bête qui me permet lors d'un changement d'état dans une cellule de déplacer la ligne dans un onglet "Archive".
    Ma macro a l'air de fonctionner à peu près sauf qu'au lieu de m'insérer la ligne copiée en ligne 5 de l'onglet archive, à chaque fois que je relance la macro il me la décale de 4 lignes vers le bas (coller en ligne 16 puis 20 puis 24,....), je ne vois pas pourquoi....

    Si vous avez une explication je suis preneur (j'ai enlevé le "Shift:=xlDown" pensant que ça pouvait venir de là mais ça change rien)

    D'ailleurs le delete non plus ne marche pas mais j'ai pas creusé encore le pourquoi


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    Private Sub Worksheet_Change(ByVal Target As Range)
     
    nuColonneResultat = 6
     
    '   Si un changement est détecté en colonne nuColonneResultat
        If Target.Column = nuColonneResultat Then
            ' Si la ligne est à archiver
            If Target.Value = "ARCHIVE" Then
            ' Déplacer la ligne dans l'onglet archive
               Rows(Target.Row).Cut
               Sheets("archivage").Select
               Selection.Rows("5:5").Select
               Selection.Insert
               'Selection.Insert Shift:=xlDown
               Sheets("SUIVI").Select
               Rows(Target.Row).Delete
               'Selection.Delete Shift:=xlUp
            End If
        End If
     
    End Sub
    Merci à vous

  2. #2
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 478
    Par défaut
    Bonjour,

    Essaies :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Private Sub Worksheet_Change(ByVal Target As Range)
     
    nuColonneResultat = 6
     
      ' Si un changement est détecté en colonne nuColonneResultat
      If Target.Column = nuColonneResultat Then
        ' Si la ligne est à archiver
        With Target
          If .Value = "ARCHIVE" Then
            ' Déplacer la ligne dans l'onglet archive
            Sheets("archivage").Rows(5).Insert
            .EntireRow.Copy Sheets("archivage").Rows(5)
            .EntireRow.Delete
          End If
        End With
      End If
     
    End Sub

  3. #3
    Membre confirmé Avatar de LG-69
    Homme Profil pro
    Analyste statisticien
    Inscrit en
    Juillet 2014
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste statisticien

    Informations forums :
    Inscription : Juillet 2014
    Messages : 162
    Par défaut
    Merci Patrice ! Ca fonctionne nickel.
    Bon j'ai pas compris pourquoi mon code ne fonctionne pas mais le tien je l'ai compris.

    Merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Copier/coller plusieur ligne avec vb
    Par fred43 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 08/04/2009, 19h37
  2. Réponses: 3
    Dernier message: 05/03/2009, 07h16
  3. copier/coller des lignes dans feuilles crées
    Par ericdev67 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 16/03/2008, 19h58
  4. Copier coller des lignes à l'inverse
    Par SybVicious dans le forum Excel
    Réponses: 4
    Dernier message: 23/02/2008, 11h56
  5. Copier Coller une ligne d'une table avec modif ?
    Par nolan76 dans le forum Requêtes
    Réponses: 4
    Dernier message: 04/03/2004, 16h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo