VB-DLL programmieren

Ich habe ein Programm unter Excel mit VBA erstellt. Allerdings ist eine Prozedur sehr rechenintensiv und damit auch entsprechend langsam. In einem VBA-Handbuch habe ich gelesen, daß man in einem solchen Fall, die rechenintensive Prozedur in VB schreibt, als DLL oder *.olb Datei compiliert und in Excel als Verweis einbindet.
Wer hat sowas schon mal gemacht, oder weiss, wie man DLL’s mit VB erstellt?
(Bei den zu übergebenden Variablen handelt es sich um ein Variantfeld)

Besten Dank,
Jochen

Wer hat sowas schon mal gemacht, oder
weiss, wie man DLL’s mit VB erstellt?

Das geht gar nicht in VB soviel ich weis. Es sei denn du willst eine ActiveX-DLL.

Hi Jochen,
man nehme

  • z.B.: VisualBasic 6.0
  • erstelle ActiveX-Dll…
  • …mit einer Klasse z.B.: mit dem Namen „CRechenIntensiv“
  • setzte das Property „Instancing“ auf „MultiUse“
  • schreibe z.B.: eine Public Function „Rechne“
  • und kompiliere das ganze zu einer DLL.

In VBA müßte sich das ganze dann ungefähr so einbinden lassen:

set obj = CreateObject(„Dll-Project-Name“)
set CRech = new obj.CRechenIntensiv

ergebnis = CRech.Rechne( eventuell Parameter )

greets from MichL

PS: Syntaktische Fehler vorbehalten!!