Ajout d'une ligne si cellule non vide à partir d'une colonne "X"

Résolu
evolve Messages postés 3 Statut Membre -  
 FB34 -
Bonjour, je cherche le code VBA/Macro Excel afin d'exécuter cette tâche : ajout d'une ligne à chaque fois qu'une cellule est détecté "non vide" à partir des données d'une colonne dans mon cas la "G". J'aimerais que le code s'arrête dès qu'il n'y a plus de cellules dite "non vide" sous la colonne "G". Est-ce assez clair pour vous ? Je remercie grandement la ou les personnes qui vont m'aider sur le sujet !

2 réponses

  1. via55 Messages postés 14396 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonjour

    Code à mettre dans un module puis à lancer à partir de la feuille concernée :
    Sub ajout_lignes()
    Dim Ligne As Long
    ' derniere ligne remplie de la colonne G
    Ligne = ActiveSheet.Columns(7).Find("*", , , , xlByColumns, xlPrevious).Row
    ' boucle depuis la dernière ligne remplie jusqu'à la 1
    For n = Ligne To 1 Step -1  ' si necessaire de s'arrêter avant la ligne 1 changer To 1
    ' si cellule en G vide
    If Range("G" & n).Value <> "" Then
    ' alors insertion à la ligne suivante
    Rows(n + 1 & ":" & n + 1).Select
        Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    End If
    Next
    End Sub


    Cdlmnt
    0
  2. evolve Messages postés 3 Statut Membre
     
    Bonjour ,

    Merci pour la rapidité de la réponse... C'est presque cela que j'espère obtenir. La macro insère une ligne sous les numéros MT et ce n'est pas à cette endroit que j'aimerais la retrouver. Je pourrais améliorer mon premier texte et dire autrement que c'est au-dessus de chaque #MT de la colonne G qu'il faut ajouter une ligne.

    Encore une fois merci pour votre aide. J'apprécie grandement.
    0
    1. via55 Messages postés 14396 Date d'inscription   Statut Membre Dernière intervention   2 759
       
      Bonjour

      Dans ce cas il suffit d'enlever les +1 à la ligne d'insertion

      Cdlmnt
      0
    2. evolve Messages postés 3 Statut Membre
       
      Excellent! Tout est ok !

      Merci bien !
      0
    3. FB34
       
      Bonjour,
      J'ai quasi la même question, ca tombe bien.
      La macro fonctionne correctement pour moi aussi (après avoir enlevé les +1 à la ligne d'insertion),
      Il y a juste une commande que je voulais rajouter; il s'agit de faire un copier/coller de la ligne du dessous à rajouter au dessus
      Par ailleurs, est ce qu'il est possible ne ne pas reprendre le montant figurant sur la colonne J par exemple ?
      0