Klasse ist nicht registriert
#1
Hallo zusammen,
ich habe seit einiger Zeit Probleme das ich auf meinem Laptop keine Makros öffnen kann und es diese Fehlermeldung gibt.

Klasse ist nicht registriert.
Suche nach Objekt mit
CLSID:{AC9F2F90-E877-11CE-9F68-00AA00574A4F}

Diverse Google suchen brachten bei mir keinen Erfolg eine Excel neu Installation ebenfalls nicht. Der Windows Reparaturscann brachte mir keine Fehlermeldungen.
Eine Windows neu Installation möchte ich vermeiden.
Benutzt wird auf dem Laptop Win7 und Office 2007

Hat jemand eine Idee wie ich die Klasse nachregistrieren kann?

Danke für eure Mithilfe im Voraus.
Gruß
Dietmar

Damit das Mögliche entsteht, muß immer wieder das Unmögliche versucht werden.  
Top
#2
Hallo,

bei mir (ebenfalls Win7+Office2007) verweist die von dir genannte CLSID auf die FM20.DLL, das entspricht dem Verweis auf  'Microsoft Forms 2.0 Object Library':
Code:
[HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{AC9F2F90-E877-11CE-9F68-00AA00574A4F}\InprocServer32]
@="C:\\Windows\\SysWOW64\\FM20.DLL"
"ThreadingModel"="Apartment"


Eine alternative CLSID könnte die {1C3B4210-F441-11CE-B9EA-00AA006B1A69} sein.
Falls du also late binding nutzt und die CLSID angibst, könntest du einfach mal diese ausprobieren.

Falls du mit early binding arbeitest, fehlt vielleicht der Verweis aus 'Microsoft Form 2.0'?

Ich vermute aber, dass dein Problem genereller ist und du nicht so ohne weiteres den Verweis auf Microsoft Forms 2.0 Object Library in den Dateien ändern kannst.


Da ich mich in den Dingen nicht so sonderlich auskenne, hoffe ich, dass andere mit den von mir genannten Informationen dir einen guten und erprobten Rat geben können.


================ Achtung, ich kann nicht empfehlen, diesen Ideen zu folgen:
Ich schreibe einfach mal, was ich so probieren würde (hier meine ich wirklich "ausprobieren", da ich selbst das noch nie ausprobiert habe). Allerdings kann ich das nicht empfehlen (da keine Erfahrung damit und keine Ahnung davon). Außerdem sollte man nicht an seiner Registry rumfummeln - insbesondere dann nicht, wenn man nicht weiß, wie wieder rückgängig machen.
  • Ich persönlich würde einfach mal nachschauen, ob die Datei FM20.DLL im entsprechenden Pfad existiert.
    Ich würde sie neu installieren (regsvr32.exe ...)
    Und in der registry nachsehen, ob deine CLSID gesetzt wurde.
    evtl. den von mir geposteten registry-Eintrag vornehmen und testen, ob das was bringt.

Ich hoffe, andere wissen mehr.

Grüße, Ulrich

[edit: ich dachte, du hättest gegoogelt? wenn ich bei google deine CLSID eingebe, dann lande ich sofort bei vielen gleichartigen Fragestellungen und deren Lösungen??]
Top
#3
Hallo Ulrich,
vielen Dank für deine Antwort und deinem interesse.

Zitat:Ich persönlich würde einfach mal nachschauen, ob die Datei FM20.DLL im entsprechenden Pfad existiert.
Die FM20.DLL befindet sich bei mir im System Ordner    C:\Windows\System32


Zitat:Und in der registry nachsehen, ob deine CLSID gesetzt wurde

Was heißt gesetzt? In der Registry gibt es die CLSID mit unzähligen Unterordnern
Zitat:evtl. den von mir geposteten registry-Eintrag vornehmen und testen, ob das was bringt.

Wo genau soll der hin?

Zitat:Ich würde sie neu installieren (regsvr32.exe ...)
Wenn ich die regsvr32.exe ausführe gibt es eine Fehlermeldung
Gruß
Dietmar

Damit das Mögliche entsteht, muß immer wieder das Unmögliche versucht werden.  
Top
#4
Hallo,

die Warnung von "losgehts" finde ich gut und gilt auch für mich:

Da die "Forms" oft für den Zugang zum Clipboard genutzt werden, hatte ich vor kurzem nachgesehen:

Zitat:Verweis auf MSForms 2.0 oder eine UserForm anlegen (FM20.dll)(C:\Program Files (x86)\Microsoft Office\root\VFS\SystemX86)



oder late binding:


Code:
With GetObject("New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}")


In xl2016 ist es nicht möglich nur per Auswahl in der Liste "Verweis" die FM20.dll auszuwählen. Es geht nur, wenn eine userForm angelegt wurde.

mfg
Top
#5
Hallo,

in den Verweisen konnte ich die FM20.dll auswählen und die MSForms 2.0 aktivieren wenn ich dann eine Userform einfügen möchete, kommt wieder meine Fehlermeldung Klasse nicht registriert.

Was meinst du mit "late binding" und wo muss der Code dann hin?
Gruß
Dietmar

Damit das Mögliche entsteht, muß immer wieder das Unmögliche versucht werden.  
Top
#6
late binding

guggschdu link
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste