Bonjour,
Suite à une question que j'ai posée (comment fusionner deux fonction excel), Eric m'a apporté une réponse utilisant VBA.
Je l'ai essayée, elle a fonctionné. Puis je me suis mis à coder (je n'ai jamais fait de VBA, mais je programme dans 11 autres langages).
La nouvelle fonction que j'ai développée (très simple) n'a pas fonctionné (étrange) et je me suis rendu compte que la fonction fournie par Éric ne fonctionnait plus non plus sur ma machine. J'ai re-lancé Excel, redémarré mon ordi…. rien n'y fait.
Voir le fichier ci-dessous qui doit afficher "c" au lieu de "Erreur Find". Ca marche parfaitement sur la machine d'Eric, Ca ne fonctionne pas du tout sur la mienne. Et chez vous ? Une idée ?
Function rechercheP(val_recherchee As Variant, tabl_recherche As Range, matrice_donnees As Range, col_donnees As Long) As Variant
Dim c As Range
Set c = tabl_recherche.Find(val_recherchee, LookIn:=xlValues, lookat:=xlWhole)
If c Is Nothing Then
rechercheP = "Erreur Find"
Else
rechercheP = matrice_donnees.Cells(c.Row - matrice_donnees.Row + 1, matrice_donnees.Column - col_donnees)
End If
End Function
J'utilise Excel 2011 pour MAC Version 14.4.2