Microsoft 365 Insérer des lignes selon variable

yannlion

XLDnaute Junior
Bonjour le forum,

J'essaie d'insérer un saut de page puis 4 lignes (de la ligne 1 à 4) sur une ligne à chaque fois qu'une valeur change en colonne A :

VB:
    For i = .Range("A65000").End(xlUp).Row - 1 To 6 Step -1
        If .Cells(i, 1) <> .Cells(i - 1, 1) Then .HPageBreaks.Add Before:=Rows(i)
    Next

    Dim ligne As Integer
    For ligne = 5 To .Range("A65000").End(xlUp).Row - 1
        If .Cells(ligne, 1) <> .Cells(ligne + 1, 1) Then
    Rows("1:3").Select
    Selection.Copy
    Rows("ligne:ligne").Select
    Selection.Insert Shift:=xlDown
        End If
    Next

J'ai essayer de partir d'une macro enregistrée mais la variable me bloque ...
Une idée ?

Merci
Yann
 

gbinforme

XLDnaute Impliqué
J'essaie d'insérer un saut de page puis 4 lignes (de la ligne 1 à 4) sur une ligne à chaque fois qu'une valeur change en colonne A :
Bonjour
Pour insérer 4 lignes en tête si changement en colonne A :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.CountLarge = 1 _
    And Not Intersect(Target, Columns(1)) Is Nothing Then
        Application.EnableEvents = False
        Rows("1:4").Insert Shift:=xlDown
        Application.EnableEvents = True
    End If
End Sub
Pour le saut de page il faudrait préciser.
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 370
Messages
2 087 693
Membres
103 641
dernier inscrit
anouarkecita2