Saut de page conditionnel

Le
Martin
Bonjour

J'ai un fichier excel (je trvail sous excel 2000) dans lequel j'aimerais
ajouter un saut de page a chaque fois que le nom inscrit dans la colonne D
change, le tout fait par une macro bien-sur!

Je n'arrive vraiment pas a réussir!!

P.S.

Ma plage de sélection est de a4 a h5000

Merci à l'avance
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
cousinhub
Le #4240361
Bonsoir, essaie :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 And Target.Column = 4 Then
If Target <> Target.Offset(-1, 0) Then
With ActiveWindow.SelectedSheets
.HPageBreaks.Add Before:¬tiveCell.Offset(-1, 0)
.VPageBreaks.Add Before:¬tiveCell.Offset(0, 1)
End With
End If
End If
End Sub

Bon courage


Bonjour

J'ai un fichier excel (je trvail sous excel 2000) dans lequel j'aimerais
ajouter un saut de page a chaque fois que le nom inscrit dans la colonne D
change, le tout fait par une macro bien-sur!

Je n'arrive vraiment pas a réussir!!

P.S.

Ma plage de sélection est de a4 a h5000

Merci à l'avance




cousinhub
Le #4240351
Oupss, il faut quand même pouvoir écrire dans la 1ère ligne de la
colonne "D", et pour ta première valeur de "D2", par exemple, tu entres
une condition supplémentaire

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 And Target.Column = 4 And Target.Row > 1 Then
If Target <> Target.Offset(-1, 0) Then
With ActiveWindow.SelectedSheets
.HPageBreaks.Add Before:¬tiveCell.Offset(-1, 0)
.VPageBreaks.Add Before:¬tiveCell.Offset(0, 1)
End With
End If
End If
End Sub


Bonjour

J'ai un fichier excel (je trvail sous excel 2000) dans lequel j'aimerais
ajouter un saut de page a chaque fois que le nom inscrit dans la colonne D
change, le tout fait par une macro bien-sur!

Je n'arrive vraiment pas a réussir!!

P.S.

Ma plage de sélection est de a4 a h5000

Merci à l'avance




garnote
Le #4240341
Salut Martin,

Peut-être que :

Sub Sauts()
Application.ScreenUpdating = False
Dim i As Integer
For i = 5 To 5000
If Cells(i, 4) <> Cells(i - 1, 4) Then
Rows(i & ":" & i).Select
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:¬tiveCell
End If
Next i
End Sub

Serge

"Martin"
Bonjour

J'ai un fichier excel (je trvail sous excel 2000) dans lequel j'aimerais
ajouter un saut de page a chaque fois que le nom inscrit dans la colonne D
change, le tout fait par une macro bien-sur!

Je n'arrive vraiment pas a réussir!!

P.S.

Ma plage de sélection est de a4 a h5000

Merci à l'avance




Martin
Le #4240311
Wow

Merci beaucoup à vous 2, c'est vraiment merveilleux!
ca fonctionne a merveille!!

Bonne fin de semaine!!

Martin
"garnote" uEfBr#
Salut Martin,

Peut-être que :

Sub Sauts()
Application.ScreenUpdating = False
Dim i As Integer
For i = 5 To 5000
If Cells(i, 4) <> Cells(i - 1, 4) Then
Rows(i & ":" & i).Select
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:¬tiveCell
End If
Next i
End Sub

Serge

"Martin"

Bonjour

J'ai un fichier excel (je trvail sous excel 2000) dans lequel j'aimerais
ajouter un saut de page a chaque fois que le nom inscrit dans la colonne
D


change, le tout fait par une macro bien-sur!

Je n'arrive vraiment pas a réussir!!

P.S.

Ma plage de sélection est de a4 a h5000

Merci à l'avance








cousinhub
Le #4240261
Re-, en malaxant les 2 soluces, on pourrait presque faire :

Sub Sauts2()
Application.ScreenUpdating = False
ActiveSheet.ResetAllPageBreaks
Dim i As Integer
For i = 5 To 5000
If Cells(i, 4) <> Cells(i - 1, 4) Then
With ActiveWindow.SelectedSheets
.HPageBreaks.Add Before:Îlls(i, 4)
.VPageBreaks.Add Before:Îlls(i, 4).Offset(0, 5)
End With
End If
Next i
With ActiveSheet.PageSetup
.FitToPagesWide = 1
End With
Application.ScreenUpdating = True
End Sub

Maintenant, si tu as encore quelques soucis, n'hésites pas ---)
Bonne soirée

Wow

Merci beaucoup à vous 2, c'est vraiment merveilleux!
ca fonctionne a merveille!!

Bonne fin de semaine!!

Martin
"garnote" uEfBr#
Salut Martin,

Peut-être que :

Sub Sauts()
Application.ScreenUpdating = False
Dim i As Integer
For i = 5 To 5000
If Cells(i, 4) <> Cells(i - 1, 4) Then
Rows(i & ":" & i).Select
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:¬tiveCell
End If
Next i
End Sub

Serge

"Martin"

Bonjour

J'ai un fichier excel (je trvail sous excel 2000) dans lequel j'aimerais
ajouter un saut de page a chaque fois que le nom inscrit dans la colonne
D


change, le tout fait par une macro bien-sur!

Je n'arrive vraiment pas a réussir!!

P.S.

Ma plage de sélection est de a4 a h5000

Merci à l'avance











Publicité
Poster une réponse
Anonyme