Bonjour le forum,
Tout d'abord, veuillez m'excuser par avance
si mes 2 questions ci-dessous ont déjà été posées, mais je n'ai rien trouvé pour l'instant sur le forum...
J'ai 2 questions urgentes :
QUESTION 1 :
J'ai une fonction en C qui me retourne en sortie un char *** (un pointe vers un tableau de chaîne de caractères ? - je précise que je suis nul en C...).
Voici sa déclaration de base :
long RecupListe(char ***MaListe)
Cette fonction me retourne donc une liste de chaîne de caractères.
J'aimerais pouvoir l'inclure dans une DLL, du style :
extern "C" __declspec(dllexport) long __stdcall RecupListe(char ***MaListe)
Puis ensuite, l'appeler depuis VBA dans Excel pour afficher les éléments de cette liste dans la colonne que je veux.
J'ai pour l'instant déclaré la fonction en VBA de la façon suivante :
Public Declare Function RecupListe Lib "maDLL.dll" Alias "_RecupListe@8" (ByRef lptArray As Long) As Long
où 'lptArray serait un pointeur vers la liste...
Pouvez-vous me répondre en me donnant un exemple adapté aux déclarations que j'ai faites ci-dessus SVP ?
Doit-on utiliser des SAFEARRAY, des instructions 'VarPtrStringArray', autre chose ?
QUESTION 2 :
Dans le même principe, j'ai une fonction C qui passe en arguments de sortie des double **, du style :
extern "C" __declspec(dllexport) long __stdcall RecupValeurs(double **LeTemps, double **LaValeur)
J'aimerais dans ce cas pouvoir appeler la fonction depuis Excel en VBA, et afficher dans 2 colonnes le temps et la valeurs correspondante...
Avez-vous un exemple adapté SVP ?
Il se pourrait qu'il manque des infos pour que vous puissiez me dépanner rapidement, donc n'hésitez pas à me demander plus de détails s'il le faut.
Merci beaucoup par avance pour votre aide précieuse !
Note : Je précise que je ne pourrai pas envoyer les bouts de code correspondants, car l'exemple que j'ai fourni ci-dessus ne représente pas la réalité, et je ne peux pas envoyer l'original...
Partager