Académique Documents
Professionnel Documents
Culture Documents
nom sous lequel elles sont exportes : linterface de la DLL. Excel ne peut accder que des fonction qui traitent des paramtres et retourne des valeurs de types reconnus. Excel ne peut pas accder directement des classes.
Dfinition de linterface
Fichier HelloWorld.def
librairie dynamique (DLL). On ne peut accder que aux fonctions qui ont t exportes par le crateur de la DLL.
Declare Function cHello Lib "HelloWorld.dll" () As String Function Hello() As String Hello = cHello() End Function
Passage de paramtres
On peut passer des donnes entre VBA et C++. Si une
variable est passe ByRef depuis VBA, alors en C++ le paramtre correspondant doit tre dclar comme pointeur. On peut passer un array de VBA vers C++ en passant par rfrence le premier lment dun tableau de taille suffisante. On peut aussi utiliser le type Variant de VBA et y inclure un tableau.
quivalence de Types
VBA Byte Boolean Integer Currency Single Double Date String Variant C++ unsigned char [signed] short [signed] [long] int CY (type de <wtypes.h> float double double DATE (type de <wtypes.h> BSTR (type de <wtypes.h> VARIANT (type de <oaidl.h>
aliasname][([arglist])] [Public|Private] Declare Function name Lib libname [Alias aliasname] [([arglist])] [As Type]
recours un fichier def. Il est impratif de prcder chaque fonction dune directive
__declspec(dllexport)
utilisant la directive :
extern "C"