morgan541 | Bonjour,
Nouveau topic today
alors Les personnes m'ayant aidé cette semaine sur ce forum ont pu voir que j'utilisais libraires c++ pour créer objets com pouvant être utilisés par la suite dans Excel.
J'ai fait des essais pour des exemples basiques...Cela marche
dans Excel=super
Par contre, j'ai une fonction C++ un plus costaid qui marche dans l'éxécutable sous visual (cela renvoie un vecteur de doubles)
Evidemment, j'ai converti tout ce qui fallait dans mon outil COM
du style
Code :
- EXCEL_EXEC(CDSOptionCalibration)
- //void ExcelBlackScholes::exec(VariantMatrix &commandOutputs)
- {
- SET_DOUBLE_ARG(CDS_Recovry)
- SET_DOUBLE_ARG(CDS_frequency)
- SET_VECTOR_ARG(vvMaturities)
- SET_VECTOR_ARG(vvSpreads)
- SET_VECTOR_ARG(vvObs_Times)
- SET_VECTOR_ARG(vvObs_Yields)
- SET_DOUBLE_ARG(CDS_Discretisation)
- SET_DOUBLE_ARG(CDS_Maturity)
- QuantLib::Vector<double> res,
- maturities(vvMaturities.size()),
- spreads(vvSpreads.size()),
- obs_times(vvObs_Times.size()),
- obs_yields(vvObs_Yields.size());
- vvMaturities.asDoubleVector(maturities.begin(), maturities.end());
- vvSpreads.asDoubleVector(spreads.begin(), spreads.end());
- vvObs_Times.asDoubleVector(obs_times.begin(), obs_times.end());
- vvObs_Yields.asDoubleVector(obs_yields.begin(), obs_yields.end());
- res=CDS_Option_Calibration(CDS_Recovry,CDS_frequency,maturities,spreads,obs_times,obs_yields,CDS_Discretisation,CDS_Maturity);
- commandOutputs = VariantMatrix(10,1);
- commandOutputs(0,0).setDouble(10.0);
- }
|
Pa sd'erreur de compil-->DLL crée
MAIS quand j'appelle ma fonction dans excel cela me ferme mon Excel
donc il doit y avoir un gros souci qu'excel n'aime pas.
AVez vous une idée?
merci |