2010-03-01 5 views
2

J'ai actuellement une DLL VB.NET qui retourne un tableau irrégulier de double. Ceci est la déclaration:Recevoir un tableau Jagged dans VBA (VB6)

Public Function CalcMatching(ByRef dataArray1 As Object, 
    ByRef dataLen1 As Integer, ByRef dataArray2 As Object, 
    ByRef dataLen2 As Integer, ByRef matchingType As String) As Double()() 

Il fonctionne bien à l'intérieur VB.NET, mais quand je l'insérer dans un projet VBA, je remarque que, après l'exécution de la fonction, lors de la récupération des données, le « décalage de type » exception est soulevée dans VBA.

J'ai cherché sur Internet, mais je ne pouvais pas trouver une déclaration d'un tableau en dents de scie à l'intérieur VBA. est-ce possible? Si oui, comment puis-je le faire?

+1

J'ai probablement mal compris votre point, mais peut-être dataArray1 comme variante? – Fionnuala

+0

Est-ce la déclaration VB.Net? – wqw

+0

wqw, oui c'est la déclaration .NET. – bbouzan

Répondre

1

Juste une supposition sans voir le code VBA appelant, mais je crois que cela est causé par des arguments ByRef au lieu de ByVal. arguments que vous pouvez lire sur here.

+0

Steve, les paramètres ne génèrent aucun problème, le problème est avec le type de retour de la fonction, ce qui n'est pas accepté par VBA. – bbouzan

Questions connexes