Prévenir La Gamme.Find() de changer le “match ensemble du contenu de la cellule” paramètre de l'interface utilisateur

Après l'exécution de la première ligne du code ci-dessous, Excel modifie le Match ensemble du contenu de la cellule paramètre dans l'interface utilisateur. Le résultat est que la prochaine fois que l'utilisateur appuie sur Ctrl+F la recherche se fait dans l'ensemble du contenu de la cellule. Je n'aime pas une macro VBA qui change un paramètre qui influe sur l'expérience de l'utilisateur, de sorte que j'ai toujours exécuter la deuxième ligne, qui effectue une recherche et définit les Match ensemble du contenu de la cellule par défaut.

'execute the find and changes the entire cell content setting
Set C = MyRange.Find(SomeText, LookAt:=xlWhole)

'put the setting back to the default value (not the previous value)
MyRange.SomeText ParName, LookAt:=xlPart

Le problème est qu'il jeux de revenir à la valeur par défaut, et non pas à la valeur à l'utilisateur de définir ce dernier.

Je préfère avoir quelque chose comme:

'store the current entire cell content setting
OldLookAt = Application.FindLookAt

'execute the find
Set C = MyRange.Find(SomeText, LookAt:=xlWhole)

'restore the original setting
Application.FindLookAt = OldLookAt

J'ai fait jusqu'à la Application.FindLookAt parce que je n'étais pas capable de le trouver.

Est-il un moyen de Range.Find quelque chose sans affecter l'expérience de l'utilisateur?

OriginalL'auteur stenci | 2013-10-09