Objekterstellung durch ActiveX Komponente nicht mö

Hi ho,
Habe en Programm gebastelt, das aus einer Excel Tabelle Daten zieht, und in einem List View darstellt. Das ganze dann kompiliert und mit dem Verpackungstool zu einer Installationsversion gemacht.
Soweit so gut.
Dann habe ich das bei mehreren Leuten aufgespielt, und bei einem drittel der Leute bekam ich die Fehlermeldung:
Objekterstellung durch ActiveX Komponente nicht möglich.
Ich habe mal in dem Support Ordner geschaut, und dort sollten eigentlich alle benötigten Dlls sowie OCX vorhanden sein.

Gruß
Thomas

Hast Du auch alle Dll’s und ocx, die Du verteilt hast auf den Zielrechnern auch registriert?

Habe en Programm gebastelt, das aus einer Excel Tabelle Daten
zieht, und in einem List View darstellt. Das ganze dann
kompiliert und mit dem Verpackungstool zu einer
Installationsversion gemacht.
Soweit so gut.
Dann habe ich das bei mehreren Leuten aufgespielt, und bei
einem drittel der Leute bekam ich die Fehlermeldung:
Objekterstellung durch ActiveX Komponente nicht möglich.
Ich habe mal in dem Support Ordner geschaut, und dort sollten
eigentlich alle benötigten Dlls sowie OCX vorhanden sein.

Eventuell liegt das daran, daß das Drittel der Leute, bei denen es nicht geht, eine andere Excel-Version hat, als bei Dir (und denen, wo’s geht) installiert ist. Bei early-binding:
Dim MExcel As Excel.Application
wird muß dieselbe Version installiert sein, die Du unter Verweise referenzierst. Logisch, Du kannst ja schlecht mit Deinem Tool den Leuten mal eben eine neue Excel-Version mitinstallieren.

Deshalb ist dies einer der seltenen Fälle, wo late-binding sinnvoll ist:
Dim MExcel As Object
Set MExcel = CreateObject(„Excel.Application“)
Damit benutzt Du einfach die jeweils installierte Version.

Grüße,

Andreas

Hi

Bei early-binding:

Dim MExcel As Excel.Application
wird muß dieselbe Version installiert sein, die Du unter
Verweise referenzierst. Logisch, Du kannst ja schlecht mit
Deinem Tool den Leuten mal eben eine neue Excel-Version
mitinstallieren.

das ist bedingt richtig. Wenn z.b. Excel 8 im VB verweist, so läuft dein Program auch mit Excel 9, da Excel 9 binärkompatibel zu Excel 8 ist.

Gruss

Vielen Dank
Hat mir sehr geholfen, und nu gehts :smile:)
Gruß
Thomas