Function PlageÀPartirDe(ByVal PlageDép As Range, Optional ByVal PlagExam As Range = Nothing) As Range
Dim F As Worksheet, LMax As Long, CMax As Long, Nbl As Long, NbC As Long
On Error GoTo RienTrouvé
Set F = PlageDép.Worksheet: If PlagExam Is Nothing Then Set PlagExam = F.UsedRange
LMax = PlagExam.Find("*", F.Cells(1, 1), xlValues, xlWhole, xlByRows, xlPrevious).Row
CMax = PlagExam.Find("*", F.Cells(1, 1), xlValues, xlWhole, xlByColumns, xlPrevious).Column
On Error GoTo 0
Nbl = LMax - PlageDép.Row + 1: If Nbl < 1 Then GoTo CEstToutVide
NbC = CMax - PlageDép.Column + 1: If NbC < 1 Then GoTo CEstToutVide
Set PlageÀPartirDe = PlageDép.Resize(Nbl, NbC)
Exit Function
RienTrouvé: Resume CEstToutVide
CEstToutVide: Set PlageÀPartirDe = Nothing
End Function