C++-DLL und Integration in Excel(VBA)
-
Ich habe ein Problem aus einer Funktion, die ich aus Excel (mit VBA) aufzurufe, zurückzukehren. Anscheinend funktioniert etwas mit dem Rückgabewert nicht. (Ich habe cdecl und stdcall als Calling Convention schon ausprobiert, es brachte aber keine Veränderung)
Die C-Funktion in der DLL sieht folgendermaßen aus:
int _declspec(dllexport) add(a,b) int a,b; { int c; FILE *fp; fp=fopen("\\sc\\mydll.txt","w"); fprintf(fp,"Parameter = %d %d\n",a,b); fclose(fp); c=a+b; return(c); }
Und in Ecel wird die Funktion addition so definiert:
Declare Function add Lib "d:\sc\mydll.dll" (ByVal a As Long, ByVal b As Long) As Long Function addition(a, b) addition = add(a, b) End Function
Wenn man in Excel eine Berechnung vornimmt, dann tritt die Fehlermeldung #WERT! auf. Das File (siehe die C-Funktion add) wird erstellt.
Was könnte das Problem sein?
-
push
-
Dieser Thread wurde von Moderator/in davie aus dem Forum C++ in das Forum Rund um die Programmierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
sicher, dass du die wertzuweisung im exel richtig gemacht hast?