Insérer un nombre de ligne sous conditions dans excel

Fermé
Pepsinette Messages postés 2 Date d'inscription mardi 2 juillet 2013 Statut Membre Dernière intervention 3 juillet 2013 - 2 juil. 2013 à 17:31
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 - 3 juil. 2013 à 14:04
Bonjour,

J'essaie de créer dans excel une macro me permettant d'insérer sous une ligne un nombre données de ligne précisé dans la ligne sélectionnée en question.

Ce n'est pas très clair, alors voici comment se construit mon tableau

J'ai pour le moment 200 lignes à mon tableau (titres inclus)
Dans la deuxième colonne de chaque ligne figure un nombre qui peut varier de 1 à 50.
Donc mettons que
B2 = 12
B3 = 1
B4 = 26
etc

je voudrais insérer
12 lignes entre la ligne 2 et la ligne 3
1 ligne entre la ligne 3 et la ligne 4 (en considérant ici que ces numéros de lignes sont avant les insertions, puisqu'après les premières insertions ils vont changer)
26 ligne entre la ligne 3 et la ligne 4
etc...

Est-ce que quelqu'un pourrait m'aider ?

Merci d'avance,
A voir également:

3 réponses

Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 338
2 juil. 2013 à 19:36
Bonjour

Essayez ceci
Sub InsertLignes()
    Application.ScreenUpdating = False
    DerLig = Range("A100000").End(xlUp).Row - 1
    Range("B2").Select
    
    Do While ActiveCell.Row <= DerLig
        If Not IsEmpty(ActiveCell) Then
            NbLig = ActiveCell.Value
            ActiveCell.Offset(1, 0).EntireRow.Select
            Rows(ActiveCell.Row & ":" & NbLig + ActiveCell.Row - 1).Select
            Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
            ActiveCell.Offset(NbLig, 1).Select
            DerLig = Range("A100000").End(xlUp).Row - 1
            GoTo Suivant
        Else
            ActiveCell.Offset(1, 0).Activate
        End If
        
Suivant:
    Loop
End Sub


cdlt
0
Pepsinette Messages postés 2 Date d'inscription mardi 2 juillet 2013 Statut Membre Dernière intervention 3 juillet 2013
3 juil. 2013 à 13:58
Merci pour votre réponse, malheureusement cela ne marche pas. J'obtiens juste la sélection de la cellule B2.

Cdlmt
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 338
3 juil. 2013 à 14:04
Bonjour

Curieux, ça fonctionne pourtant très bien chez moi.

est-ce que les données de la colonne B sont bien consécutives, ou bien y a t-il des cellules vides entre chaque valeur?

au besoin, mettez un échantillon de votre fichier en pièce jointe, pour voir où cela coince

cdlt
0