Bonjour,

rebondissant sur la discussion récente "méthode select de la classe range a échoué", je souhaiterais avoir des précisions sur le comportement de ce bout de code trouvait dans l'aide microsoft.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Sub essai()
Feuil1.Select
 
ActiveSheet.ResetAllPageBreaks   'mon ajout qui semble avoir amélioré le comportement
'Range("a2").CurrentRegion.Select
Feuil1.PageSetup.PrintArea = "$A$1:" & Range("E" & Rows.Count).End(xlUp).Address 'mon ajout
cfull = 0: cpartial = 0
For Each pb In Feuil1.HPageBreaks
    If pb.Extent = xlPageBreakPartial Then
      cpartial = cpartial + 1
    Else
      cfull = cfull + 1
    End If
Next
MsgBox cfull & " full-screen page breaks, " & cpartial & _
    " print-area page breaks"
 
End Sub
Il semble que cela ne fonctionne que si l'ensemble du fichier est visible à l'écran.

Cela est particulièrement flagrant dans la discussion citée.

Le passage dans la boucle ne se fait pas si tous les sauts de pages ne sont pas visibles à l'écran.

Un expert peut-il donner une explication et confirmer mon constat.

Merci.

cordialement.