begin process at 2012 05 29 03:14:43
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Divers

 > 

dll C++ et appel en VBA


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

dll C++ et appel en VBA

mercredi 13 juillet 2011 à 09:10:04 | dll C++ et appel en VBA

floatingspread

Bonjour,
J'ai créé un DLL C++ qui contient la fonction suivante :

Code C/C++ :
double __stdcall AdditionTableau_5(double * table1, double * table2, double * RetourTableau) {
	int i;
	for (i=0;i<5;i++) {
		RetourTableau[i] = table1[i] + table2[i];
	}
	return 1.0;
}


Dans mon code VBA, je fais :

Code Visual Basic :
Declare Function AdditionTableau_5 _
Lib "D:\Documents and Settings\stage\Bureau\CPP\Test_DLL7\Debug\Test_DLL7.dll" (ByRef table1() As Double, ByRef table2() As Double, ByRef RetourTableau() As Double) As Double



Code Visual Basic :
Sub Fonction_Test3()
    
    
    Dim Retour_F As Double
    Dim table1(1 To 5) As Double
    Dim table2(1 To 5) As Double
    Dim RetourTableau(1 To 5) As Double
    
    table1(1) = 1
    table1(2) = 2
    table1(3) = 3
    table1(4) = 4
    table1(5) = 5
    
    table2(1) = 1
    table2(2) = 2
    table2(3) = 3
    table2(4) = 4
    table2(5) = 5
    
    Retour_F = AdditionTableau_5(table1, table2, RetourTableau)
    MsgBox (Retour_F)
        
End Sub


Quand j'essaie de voir ce qu'il y a dans RetourTableau, ça m'affiche un message d'erreur l'indice n'appartient pas à la sélection.
Le tableau n'est pas non plus rempli lorsque je remplace :
Code Visual Basic :
Retour_F = AdditionTableau_5(table1, table2, RetourTableau)


par :

Code Visual Basic :
Retour_F = AdditionTableau_5(table1(1), table2(1), RetourTableau(1))



Ca me met comme message Incompatibilité de type : tableau ou type défini par l'utilisateur attendu

Comment faire pour passer des tableaux en paramètre?

Merci
mercredi 13 juillet 2011 à 12:03:38 | Re : dll C++ et appel en VBA

ed73

Bonjour,

En VB, déclare ta fonction de la manière suivante :

Declare Function AdditionTableau_5 _
Lib "D:\Documents and Settings\stage\Bureau\CPP\Test_DLL7\Debug\Test_DLL7.dll" (ByRef table1 As Double, ByRef table2 As Double, ByRef RetourTableau As Double) As Double

Ne met pas les () car pour ta dll les paramètres sont des pointeurs, tu lui passes donc les adresses du premier élément de tes tableaux.

mercredi 13 juillet 2011 à 13:51:39 | Re : dll C++ et appel en VBA

floatingspread

Salut,
Merci beaucoup, ça marche maintenant!

Cordialement


Cette discussion est classée dans : code, double, table2, table1, retourtableau


Répondre à ce message

Sujets en rapport avec ce message

[newbie] isdigit + double = :'( [ par CHKDSK2K ] Bonjour all, le probleme est que apres la verfication il ne m'affiche pas le nombre que j'ai entré .... :'( voici le cs#include #include void main(){ Excel Wrapper XLW + XLL + <math.h> fonctionne pas [ par david_hoorens ] BonjourJ'essaye de créer une solution sous Visual Studio 2003 qui crée un XLL pouvant etre utilisé sous Excel.Pour cela, j'utilise XLW (wrapper C++) q Effectuer un test sur un #define [ par romain60112 ] Bonjour,Je souhaiterais savoir comment tester si plusieurs préprocesseur sont définit. Voici ce que je souhaite faire :    Ex 1 :      #defin Passage de méthodes en paramètre [ par Adel85 ] Bonjour, J'ai récupéré un code écrit en c++ (http://cubature-research-group.cs.latrobe.edu.au/code.htm) pour le calcul des intégrale double. Si j'uti Creer une fonction Logistique [ par landroux ] Bonjour, je suis débutant en programmation et je souhaiterais écrire une fonction logistique mais mon code à un problème, si quelqu'un peu m'aider...[ que fait cette ligne de code ? [ par thephil ] Bonjour à tous,ça va certainement paraître très c..mais quelqu'un pourrait il me dire ligne par ligne ce que font ces lignes de code (à part pour les double free or corruption [ par BirD ] Hello tout le monde, voilà, j'ai un bête problème de pointeur dans mon code qui m'amène à une erreur de type [color=red]*** glibc detected *** ./per Code d'un mini compilateur en C [ par achrefpdg ] [^^happy10] Salut les amis y a t il quelqu' un qui peut m'aider de corriger ce code source de mini compilateur . Voila le lien http://www.4shared.com/ Demande code source d'un mini compilateur en C [ par achrefpdg ] [^^happy10] Slt , Svp ya t il qq un qui peut me donner un lien de code source d'un mini compilateur en C qui contient analyseur lexical , syntaxique e


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,718 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales