Insérer des lignes selon valeur et copier le contenu

Bonjour,

je suis occupé à récupérer un inventaire par lots que je voudrais traiter à la pièce.

Il y a donc une colonne reprenant le nombre de pièces par lot "Nbre plaques".

Quand ce "Nbre plaques" est supérieur à 1, je voudrais dupliquer la ligne autant de fois que nécessaire.

Donc je suppose qu'il faut insérer sous la lignes autant de lignes que "Nbre plaques"-1

Puis remplir ces lignes avec le contenu de la ligne de départ (y compris "Nbre plaques" à sa valeur originelle)

Y a-t-il une macro disponible pour éviter de répéter cette manipulation

A moins qu'il existe une fonction dupliquer des lignes en fonction d'une valeur d'un champs???

Si Nbre plaques est vide, c'est une erreur de l'encodage de base, je me débrouillerai...

Un tout grand merci d'avance pour votre aide et vos conseils

25inventairekesam.xlsx (147.64 Ko)

Bonjour,

A voir... Mais pas très satisfaisant : long (83 secondes environs)

Tu as 15 à 20 lignes où du texte en nombre de plaques ! Je n'ai pu trouver une signalisation satisfaisante, bizarrement elle se décale (et je ne vois pas pourquoi).

Tu peux essayer en attendant mieux...

Sub InserLignes()
    Dim n&, i&, lga%
    With ActiveSheet
        n = .Cells(.Rows.Count, 4).End(xlUp).Row
        Application.ScreenUpdating = False
        On Error Resume Next
        For i = n To 2 Step -1
            If Val(.Cells(i, 6)) > 1 Then
                lga = .Cells(i, 6) - 1
                .Range("A" & i & ":F" & i).Copy
                .Range("A" & i + 1 & ":F" & i + lga).Insert xlShiftDown
            End If
        Next i
        Application.CutCopyMode = False
    End With
End Sub

Cordialement.


Merci M. Ferrand !!!

Chez moi, ça marche super bien.

J'ai aménagé la macro, car le nombre de colonnes de l'Excel sur lequel je travaille était plus important.

Mais tout semble avoir parfaitement fonctionné.

Reste les petits aménagements manuels à effectuer.

Encore un tout grand merci à toi et à la communauté !

Rechercher des sujets similaires à "inserer lignes valeur copier contenu"