VBA - insérer et copier des lignes si une cellule est remplie

Bonjour à tous,

Je suis nouvelle ici et débutante en VBA...

J'ai un souci sur un codage : j'ai créé une facturation liée à un planning cependant je souhaiterai que quand un numéro de chantier apparait à partir de la cellule B22 il insère 11 lignes et copie colle les formules et mise en forme de la plage de cellules B10:AN21 et ça sous forme de boucle en sachant que le nombre de chantiers va évoluer.

Merci par avance pour votre aide !

Bonjour jova999 et

Une petite présentation ICI serait la bienvenue

Si vous ne l'avez pas encore fait, je vous invite à lire la charte du forum [A LIRE AVANT DE POSTER]
qui vous aidera dans vos demandes et réponses sur ce forum

Concernant votre demande, pensez à utiliser l'enregistreur de macro

image

Sinon voici une possibilité de code

Sub CréationLignes()
  Dim dLig As Long, Lig As Long
  With ThisWorkbook.Sheets("Facturation")
    dLig = .Range("A" & Rows.Count).End(xlUp).Row
    For Lig = dLig To 22 Step -1
      If .Range("E" & Lig) <> "" Then GoTo SuiteLig
      .Range("A" & Lig).Select
      .Rows(Lig + 1 & ":" & Lig + 11).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
      .Range("B10:AN21").Copy Destination:=.Range("B" & Lig)
SuiteLig:
    Next Lig
  End With
End Sub

Merci de votre participation

Cordialement

Bonjour,

Merci beaucoup pour votre aide, le code fonctionne parfaitement!

Rechercher des sujets similaires à "vba inserer copier lignes remplie"