Typemismatch on external name :<name>

  • Hallo zusammen,


    ich habe ein Problem und komm nicht weiter.


    Hab eine Klasse


    Class klasse
    public a as string
    public b as string
    public c as string
    End Class


    Und eine Function
    Function gibtMirKlasse() as klasse



    Nun bekomme ich beim ausführen immer die o.a. Meldung .
    Wenn ich aber ein Variant zurückgeben funktioniert es.


    Hat jemand ne Idee oder weiss die Lösung, denn ich habe auch im Netz oder bei ibm keine gefunden die mir hilft.


    Mfg Stefan

  • Hallo Magtheridon,


    vielen Dank für deinen Hinweis, doch hab es probiert aber funktioniert leider nicht.


    Mich würde es nicht stören, wenn ich mit Variant arbeiten müsste, doch find ich leider keine Möglichkeit den Variant wieder in das entsprechende Object zu casten.


    Dim var as Variant
    Set var = gibtMirKlasse()


    Dim obj as Klasse
    Set obj = var


    funktioniert leider auch nicht, das er mir einen Type Mismatch auswürft.


    Hab das ganze in verschiedensten Varianten deguggt.
    Der Wert den die Funktion annimmt stimmt immer d.h. wenn ich Function gibtMirKlasse as Klasse mache ist es eine "Klasse".
    Doch sobald ich versuche den wert der Variable zuzuweisen schmeisst er den Fehler.
    Hab auch mit Typename(var) den Typen ermittel und der gibt auch "Klasse" doch mit var IsA "Klasse" sagt er nein.


    Bin echt am verzweifeln.
    Möchte nicht für jedes Objekt eine Factory Klasse bauen um das entsprechende Object zu erhalten.


    Bin dankbar für jeden Hinweis.


    MfG

  • Hallo zusammen,


    Fehler behoben.
    Der Name der Scirptlibrary war zu lang.
    Warum ist es nicht möglich die länge zu prüfen und dann eine Meldung wie "Der Name ist zu lang" auzugeben.
    Oder irgendwo eine definition der Beschränkungen.


    Man das sucht man 2 tage :-x


    Mfg und danke für die Hilfe.