Private Sub Worksheet_Calculate()
MAJUSF
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
MAJUSF
End Sub
Sub OuvreUSF()
MAJUSF
UserForm1.Show 0 'non modal
End Sub
Sub MAJUSF()
Dim vref, t, i&, maxi, n&
vref = 1 'référence, modifiable
t = [A1].CurrentRegion
'---détermination du maximum---
For i = 1 To UBound(t)
If t(i, 2) = vref And t(i, 1) > maxi Then maxi = t(i, 1)
Next
'---remplissage de la Listbox---
With UserForm1.ListBox1
.Clear
For i = 1 To UBound(t)
If i = 1 Or t(i, 2) = vref And t(i, 1) = maxi Then
.AddItem t(i, 1)
.List(n, 1) = t(i, 2)
.List(n, 2) = t(i, 3)
n = n + 1
End If
Next
End With
End Sub