Function TableItem(Table As Range, ByVal dansPremCol, ByVal dansPremLig, ByVal SiAbsent, ByVal PresentMaisVide)
'recherche le rang i de la valeur "dansPremCol" au sein de la 1ère colonne du tableau Table à partir de 2ème élément.
'recherche le rang j de la valeur "dansPremLig" au sein de la 1ère ligne du tableau Table à partir de 2ème élément.
'Si au moins une des 2 valeurs (i, j) n'est pas trouvée alors on retourne la valeur "SiAbsent"
'Sinon on retient la valeur y à l'intersection de la ligne i et de la colonne j
'NOTA: si y est vide alors on retourne la valeur "PresentMaisVide" sinon on retourne y
Dim t, i&, j&, y
t = Table.Columns(1)
For i = 1 To UBound(t)
If dansPremCol = t(i, 1) Then Exit For
Next i
If i >= UBound(t) Then TableItem = SiAbsent: Exit Function
t = Table.Rows(1)
For j = 1 To UBound(t, 2)
If dansPremLig = t(1, j) Then Exit For
Next j
If j >= UBound(t, 2) Then TableItem = SiAbsent: Exit Function
y = Table.Cells(i, j)
If y = "" Then TableItem = PresentMaisVide Else TableItem = y
End Function