Bonjour,
j aimerai trouver code VBA (je débute) pour mettre une bordure inférieur sur une plage de cellule au dessus du saut de page .
exemple zone d impression (e1 : j60 ) premier saut de page en e20 donc mettre une bordure inférieur (e19:j19)
deuxième saut de page en e28 mettre une bordure en (e27:j27) ect ...
merci pour vos solutions
Sub test()
Dim saut As HPageBreak
For Each saut In ActiveSheet.HPageBreaks
With Range("E" & saut.Location.Row - 1).Resize(, [E1:J60].Columns.Count)
.Borders(xlEdgeBottom).LineStyle = xlContinuous
.Borders(xlEdgeBottom).Weight = 4
.Borders(xlEdgeBottom).Color = vbRed
End With
Next
End Sub
Bonjour,
merci de votre réponse , cela marche bien , j ai juste un petit problème sur la dernière page en impression la dernière ligne n a pas de de bordure inférieur , je comprend pourquoi ce n est plus un saut de page .
toute les cellules de mon tableau on des formules je n ai pas réussi a trouver la solution pour bordurer cette dernière ligne si vous avez une solution je suis preneur . j ai chercher pour trouver la dernière cellule non vide en partant du bas mais comme il y a des formules dans les cellules, elles ne sont pas considérées comme vide.
j' espère que mon problème est compréhensif .
Sub test()
Dim saut As HPageBreak
For Each saut In ActiveSheet.HPageBreaks
With Range("E" & saut.Location.Row - 1).Resize(, [E1:J60].Columns.Count)
.Borders(xlEdgeBottom).LineStyle = xlContinuous
.Borders(xlEdgeBottom).Weight = 4
.Borders(xlEdgeBottom).Color = vbRed
End With
Next
with activesheet.[E60:J60]
.Borders(xlEdgeBottom).LineStyle = xlContinuous
.Borders(xlEdgeBottom).Weight = 4
.Borders(xlEdgeBottom).Color = vbRed
End With
End Sub
Bonjour,
un petit problème avec HPageBreaks.count , cela ne prend pas toutes les pages il prend les 5 première et s'arrête la , quelqu'un connait il la raison .
Je souhaite trouver les sauts de page sur une zone d impression et mettre une bordure inferieur sur la ligne au dessus du saut de page voici le code VBA
Dim saut As HPageBreak
For Each saut In ActiveSheet.HPageBreaks
With Range("E" & saut.Location.Row - 1).Resize(, [E1:i900].Columns.Count)
.Borders(xlEdgeBottom).LineStyle = xlContinuous
.Borders(xlEdgeBottom).Weight = 2
.Borders(xlEdgeBottom).Color = vbBlack
End With
Next
Range("a17").Select
End Sub
Re,
quelque chose comme ça, d'après ce que j'ai compris.
VB:
Sub Macro1()
Dim deb As Integer
Dim col_deb As Integer
Dim col_fin As Integer
Dim interval As Integer
With ActiveSheet
deb = 19
col_deb = 5
col_fin = 10
interval = 9
For i = 1 To 100
.Range("E" & deb, "J" & deb).Borders(xlEdgeBottom).LineStyle = xlContinuous
.HPageBreaks.Add .Range("E" & deb, "J" & deb)
.VPageBreaks.Add .Range("E" & deb, "J" & deb)
deb = deb + interval
Next i
End With
End Sub
Je l'ai fait comme ça pour que vous comprenez le principe, à voir
A tester sur le principe