Hallo !
Wie der Titel schon sagt, möchte ich mit einer von mir geschriebenen DLL neue Funktionen in VBA bereitstellen. Das ganze hat auch auf meinem Heimrechner bisher super funktioniert, aber als ich das Ganze dann auf meinem Arbeitsrechner ebenfalls machen wollte, bin ich in ein Problem gerannt. Und zwar bekomme ich, wenn ich in VBA ein COM Object meiner registrierten Klasse festlegen möchte folgenden Fehler:
Ließt man das Err-Objekts aus, bekommt man folgendes:
Die beiden Maschinen laufen mit folgenden Konfigurationen:
Heimrechner:
MS Windows Vista Business 64Bit
MS Office 2003
MS Visual Studio 2005
MS .NET Framework 3.5
Arbeitsrechner:
MS Windows XP Pro
MS Office 2003
MS Visual Studio 2005
MS .NET Framework 3.5
Ich habe in Visual Studio ein Klassenbibliotheks-Projekt erstellt, diesen signiert (Strong Name) und dann folgenden Code kompiliert.
Anschließend wird die Datei noch mit RegAsm.exe als COM Bibliothek registriert.
Anschließend hab ich ein neues Excel Dokument erstellt, meine neue registrierte Bibliothek über Verweise... eingefügt, im Objektkatalog überprüft ob Bibliothek, Klasse und Funktion richtig angezeigt werden und im VBA Editor folgende Funktion erstellt:
Auf meinem Heimrechner funktioniert das Ganze so, aber auf meinem Arbeitsrechner wird bei der CreateObject Anweisung oben genannte Fehlermeldung angezeigt.
Kann mir da jemand behilflich sein ? Meine VBA-Kenntnisse sind etwas begrenzt, da ich damit schon immer etwas auf dem Kriegsfuß stand.
Wie der Titel schon sagt, möchte ich mit einer von mir geschriebenen DLL neue Funktionen in VBA bereitstellen. Das ganze hat auch auf meinem Heimrechner bisher super funktioniert, aber als ich das Ganze dann auf meinem Arbeitsrechner ebenfalls machen wollte, bin ich in ein Problem gerannt. Und zwar bekomme ich, wenn ich in VBA ein COM Object meiner registrierten Klasse festlegen möchte folgenden Fehler:
Code:
Laufzeitfehler '-2146234105 (80131107)':
Automatisierungsfehler
Ließt man das Err-Objekts aus, bekommt man folgendes:
Code:
Das Format der Datei Excel08 ist ungültig
Die beiden Maschinen laufen mit folgenden Konfigurationen:
Heimrechner:
MS Windows Vista Business 64Bit
MS Office 2003
MS Visual Studio 2005
MS .NET Framework 3.5
Arbeitsrechner:
MS Windows XP Pro
MS Office 2003
MS Visual Studio 2005
MS .NET Framework 3.5
Ich habe in Visual Studio ein Klassenbibliotheks-Projekt erstellt, diesen signiert (Strong Name) und dann folgenden Code kompiliert.
Code:
<System.Runtime.InteropServices.ComVisible(True)> _
<Microsoft.VisualBasic.ComClass()> _
Public Class TGTools
Public Sub TestFunktion()
MsgBox("Hai")
End Sub
End Class
Anschließend wird die Datei noch mit RegAsm.exe als COM Bibliothek registriert.
Code:
RegAsm.exe Excel08.dll /codebase /tlb:Excel08.tlb
Anschließend hab ich ein neues Excel Dokument erstellt, meine neue registrierte Bibliothek über Verweise... eingefügt, im Objektkatalog überprüft ob Bibliothek, Klasse und Funktion richtig angezeigt werden und im VBA Editor folgende Funktion erstellt:
Code:
Public Sub test()
Dim obj As Object
Set obj = CreateObject("Excel08.TGTools")
obj.TestFunktion
End Sub
Auf meinem Heimrechner funktioniert das Ganze so, aber auf meinem Arbeitsrechner wird bei der CreateObject Anweisung oben genannte Fehlermeldung angezeigt.
Kann mir da jemand behilflich sein ? Meine VBA-Kenntnisse sind etwas begrenzt, da ich damit schon immer etwas auf dem Kriegsfuß stand.
Zuletzt bearbeitet: