Public Sub trace_ligneByGc()
Dim I As Single, Tmp As Single, Tmp2 As Single, Déb As Single, Fin As Integer, Lign As Integer
Dim HliG As Single, HliGRef As Single, HliGTot As Single, LignT As Single, NPage As Single, PageRef As Single
Dim Pag As Integer
With Sheets("minute")
.Range("A1:F1").Borders(xlEdgeTop).LineStyle = xlDouble
.Range("A1:F1").Borders(xlEdgeTop).Weight = xlThick
Déb = 1
Tmp = 0
PageRef = 728
Fin = .Range("A" & .Rows.Count).End(xlUp).Row
HliGRef = 14
.PageSetup.PrintArea = "$a$1:$f" & Fin
For I = Déb To Fin
HliG = .Cells(I, 1).RowHeight
HliGTot = HliGTot + HliG
Next I
NPage = HliGTot / PageRef
NPage = Application.WorksheetFunction.RoundUp(NPage, 0)
Fin = (NPage * PageRef) / HliGRef
Pag = 1
HliGTot = 0
Do While Pag < NPage
'Application.WorksheetFunction.RoundUp(Tmp2, 0)
For I = Déb To Fin
HliG = .Cells(I, 1).RowHeight
HliGTot = HliGTot + HliG
If HliGTot >= (Pag * PageRef) Then
Lign = .Cells(I, 1).Row
Tmp = (HliGTot - (Pag * PageRef)) / HliGRef
Tmp = Application.WorksheetFunction.RoundUp(Tmp, 0)
Lign = Lign - Tmp
If Pag > 1 Then Lign = Lign - 1
Exit For
End If
Next I
Select Case Pag
Case 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19
.Range("A" & Lign & ":F" & Lign).Borders(xlEdgeBottom).LineStyle = xlDouble
.Range("A" & Lign & ":F" & Lign).Borders(xlEdgeBottom).Weight = xlThick
.Range("A1" & ":A" & Lign).Borders(xlEdgeLeft).LineStyle = xlDouble
.Range("A1" & ":A" & Lign).Borders(xlEdgeLeft).Weight = xlThick
.Range("F1" & ":F" & Lign).Borders(xlEdgeRight).LineStyle = xlDouble
.Range("F1" & ":F" & Lign).Borders(xlEdgeRight).Weight = xlThick
Pag = Pag + 1
Déb = Déb + Lign
End Select
Loop
End With
End Sub