Bonjour,
Je suis nouveau ici, malgré que votre forum m'a beaucoup aidé sur d'autres problèmes. Je vous en remercie!
En ce moment, je cherche à résoudre un problème que je n'ai pas trouvé de solution ailleurs, donc voici ma situation.
Je voudrais faire une macro qui me permetterait d'établir une zone d'impression sur des données filtrées...
Par exemple, j'ai 1000 ligne, lorsque je filtre selon certains critères, je réduis ma liste à 100 lignes.
Je suis capable en ce moment de définir une zone d'impression sur une plage fixe (non filtrée), mais je ne sais pas comment ajuster le code pour que ça fonctionne sur une plage filtrée. 
Macro du filtre:
Sub Bouton1_Cliquer()
    Range("B22:O50000").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
        Range("B1:O2"), Unique:=False
        
End Sub
Macro de la zone d'impression:
Dim debut As Date, fin As Date, lignedebut As Range, lignefin As Range, ligne1 As Integer, ligne2 As Integer
debut = Range("S18")
fin = Range("S19")
        Set lignedebut = Range("F1:F50000").Find(debut, lookat:=xlWhole)
        If lignedebut Is Nothing Then
        MsgBox ("Bogue")
        Else
        ligne1 = lignedebut.Row
        End If
        
        Set lignefin = Range("F1:F50000").Find(fin, lookat:=xlWhole)
        If lignefin Is Nothing Then
        MsgBox ("Bogue")
        Else
        ligne2 = lignefin.Row
        End If
        
        Set debutcell = Range("F" & ligne2)
        Set currentcell = Range("F" & ligne2)
        Set nextcell = currentcell.Offset(1, 0)
        
        Do While debutcell + 6.8287037037037E-04 >= currentcell
        If currentcell + 6.8287037037037E-04 >= nextcell Then
        Set currentcell = nextcell
        Set nextcell = currentcell.Offset(1, 0)
        End If
        Set fincell = currentcell.Offset(-1, 0)
        Loop
        
Range("B" & ligne1, "O" & fincell.Row).Select
ActiveSheet.PageSetup.PrintArea = _
    Selection.Address
End Sub