Merci d'abord de votre réponse et votre aide.
votre formule marche seulement si la cellule et égale à l'une des listes, mais pas grave vue la complexité de la tâche je me suis résigné à la faire en VBA
Sub IndexerGenre()
Dim lastRow As Long
Dim tableau1 As Range
Dim tableau2 As Range
Dim cell As Range
Dim nomComplet As String
Dim prenom As String
Dim genre As String
lastRow = ActiveSheet.Cells(Rows.Count, "B").End(xlUp).Row
Set tableau1 = Sheets("TableauDeBord").Range("TableauM")
Set tableau2 = Sheets("TableauDeBord").Range("TableauF")
For Each cell In Range("B7:B" & lastRow)
nomComplet = cell.Value
prenom = ""
genre = ""
For Each mot In Split(nomComplet, " ")
If Not prenom = "" Then Exit For
If Not IsError(Application.Match(mot, tableau1, 0)) Then
prenom = mot
genre = "G"
ElseIf Not IsError(Application.Match(mot, tableau2, 0)) Then
prenom = mot
genre = "F"
End If
Next mot
cell.Offset(0, 1).Value = genre
Next cell
End Sub
et ça marche du tonner.
merci encore une fois