View Single Post
  #1   Report Post  
Posted to microsoft.public.excel.programming
[email protected][_2_] nicolas.gendron@gmail.com[_2_] is offline
external usenet poster
 
Posts: 9
Default Le dialogue de fonction d'excel appel ma fonction "user defined"

Je sais qu'il y a un moyen de savoir si la fonction est appelé par le
dialogue d'insertion de fonction.

Il s'agit en fait de faire un truc du genre :

xloper hwnd = {0.0, xltypeNil};
if (Excel4(xlGetHwnd, &hwnd, 0))
{
return false;
}

s_fnwizEnumStruct es = {FALSE, hwnd.val.w};
EnumWindows((WNDENUMPROC)fnwiz_enum_proc, (LPARAM)&es);

où fnwiz_enum_proc regarde si un des dialog top level est
"bosa_sdm_xln" ou 'n' correspond au # de version de Excel.

Par contre, en utilisant un profiler et en faisant faire beaucoup
d'appel à mes fonctions Excel, je me suis rendu compte que ma fonction
"user defined" est appelé très très souvent et que le code ci-haut
prend un grand nombre de mes cycles.

Ma question est : existe-t-il un moyen de faire autrement ?

Merci

Nic