Astuce VBA : position dans un tableau
Pour rechercher la position d'une valeur dans une variable tableau (Array) en VBA, commencez par copier cette fonction dans un module :
Function arrayPos(tableau, recherche)
'https://www.excel-pratique.com/fr/astuces_vba/recherche-position-tableau-array
arrayPos = -1
For i = LBound(tableau) To UBound(tableau)
If tableau(i) = recherche Then 'Si valeur trouvée
arrayPos = i
Exit For
End If
Next
End Function
La fonction arrayPos renverra ensuite la position de la première valeur trouvée dans le tableau (ou la valeur -1 si la valeur n'a pas été trouvée dans le tableau).
Voici un exemple simple qui va rechercher la présence de la valeur de la variable valeurRecherche dans le tableau tableau et afficher ensuite sa position dans une MsgBox :
Sub test()
tableau = Array(23, 67, 38, 17, 854, 9, 92)
valeurRecherche = 9
MsgBox arrayPos(tableau, valeurRecherche)
End Sub