Saut de page automatique

Fermé
noxfsy Messages postés 5 Date d'inscription samedi 11 juin 2011 Statut Membre Dernière intervention 12 décembre 2013 - 12 déc. 2013 à 13:54
 noxfsy - 16 déc. 2013 à 13:21
Bonjour a tous,

J'ai fais de nombreuse recherche sur le net et je ne trouve pas clairement comment réaliser des sauts de page automatique en fonction d'un tableau avec visual basic.

J'ai trouvé des breves pour supprimer les sauts de pages et les ajouter:

Sub sdpauto()
With ActiveSheet
'supprime tous les sauts de pages
On Error Resume Next
Forx=.HPageBreaks.Count step-1
.HPageBreaks(X).Delete
Next
.HPageBreaks(X).Delete
Next
On Error GoTo o
'ajoute un saut de page quand la valeur de la 1ere colonne change.
c = 3
Do While Not IsEmpty(Cells(c, 1).Value)
If Cells(c - 1, 1).Value <> _
Cells(c, 1).Value Then
.HPageBreaks.Add
before = Cells(c, 3)
End If
c = c + 1
Loop
End With
End Sub

CETTE SI NE FONCTIONNE PAS

Moi je cherche pour mettre des sauts de page automatique des le changement de valeur texte dans une colonne C a partir de la ligne numéro 2.

Pouvez-vous m'aider a réaliser cette macro, mais surtout comprendre comment a la réaliser pour changer la colonne et le depart?

Merci d'avance pour tout



5 réponses

f894009 Messages postés 16751 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 4 décembre 2022 1 660
Modifié par blux le 16/12/2013 à 13:25
Bonjour,

Sub sdpauto()
    On Error Resume Next
    With ActiveSheet
        'supprime tous les sauts de pages
        For x = .HPageBreaks.Count To 0 Step -1
            .HPageBreaks(x).Delete
        Next
        On Error GoTo 0
        'ajoute un saut de page quand la valeur de la 1ere colonne change.
        c = 3
        Do While Not IsEmpty(Cells(c, 1).Value)
            If Cells(c - 1, 1).Value <> Cells(c, 1).Value Then
                .HPageBreaks.Add <gras>Before:=Cells(c, 3)</gras>
            End If
            c = c + 1
        Loop
    End With
End Sub
1