| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
| |
 | 7 Tipps für die Konstruktion von Kunststoffteilen und Spritzgussformen, ein Webinar am 27.06.2025
|
Autor
|
Thema: Makro bleibt mit Laufzeitfehler '91' hängen (5152 mal gelesen)
|
caxman Mitglied
 
 Beiträge: 270 Registriert: 06.08.2002 4GB RAM<P>Windows 7 32bit SWX 2008/2010
|
erstellt am: 14. Jul. 2010 08:44 <-- editieren / zitieren --> Unities abgeben:         
Hallo, habe ein Makro mit dem wir immer den Schriftkopf ausfüllen. Jetzt nach der Umstellung auf SWX 2010 bleibt das Makro mit Laufzeitfehler 91 hängen. Wenn ich in den Debugger reingehe dann ist die Zeile mit dem Formularaufruf markiert (s.u.). Kennt jemand Abhilfe? Habe schon gesucht und kann aber keinen Fehler finden. Sub main() Dim swApp As Object Dim swModel As Object Dim swDwg As SldWorks.DrawingDoc Set swApp = CreateObject("SldWorks.Application") swApp.Visible = True Set swModel = swApp.ActiveDoc If swModel Is Nothing Then Call MsgBox("Keine Zeichnung geöffnet!", vbOKOnly, "Information") Exit Sub End If If swDocDRAWING <> swModel.GetType Then Call MsgBox("Dieser Befehl ist nur bei Zeichnungen anwendbar!", vbOKOnly, "Information") Exit Sub End If Zeichnungskopf.Show 'hier bleibts mit dem Laufzeitfehler hängen Set swApp = Application.SldWorks End Sub Schon mal vorab vielen Dank! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ad_man Mitglied freiberuflicher Entwicklungsing. (Fahrzeugtechnik, CSWP, CPPA))
   
 Beiträge: 1384 Registriert: 20.12.2003 SolidWorks 2023 SP5 mit Enterprise PDM , Windows 11, Dell Precision 3660, i7-12700K, 96 GB DDR-Ram, Quadro RTX A4000
|
erstellt am: 14. Jul. 2010 09:12 <-- editieren / zitieren --> Unities abgeben:          Nur für caxman
Hallo caxman, hast du evtl. den Namen deines Formulares geändert, das du mit dem Befehl aufrufst? Fehler 91 ist doch normalerweise der "Objekt nicht gefunden"-Fehler. Sonst noch einmal die Verweise checken, vielleicht taucht da ja noch was fehlerhaftes auf. ------------------ ========== Gruß Andreas ========== Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
caxman Mitglied
 
 Beiträge: 270 Registriert: 06.08.2002 4GB RAM<P>Windows 7 32bit SWX 2008/2010
|
erstellt am: 14. Jul. 2010 09:25 <-- editieren / zitieren --> Unities abgeben:         
Hallo Andreas, vielen Dank erst mal für die schnelle Antwort! An den Formularnamen hab ich auch zuerst dran gedacht. Aber nein, hab alles umbenannt und hat trotzdem nicht funktioniert. Dann hab ich alles wieder zurückbenannt. Das komische ist dass das Makro bis jetzt gut funtioniert hat und ich deshalb auch schon lange daran nichts mehr geändert habe. Und plötzlich, von heute auf morgen geht's nicht mehr. Ich selbst habe es schon länger nicht mehr im Einsatzt gehabt, ein Kollege sagt mir dass es nicht mehr geht. Ich bin mir jetzt auch nicht ganz sicher ob es nach der Umstellung auf 2010 noch ging oder ob das ein Grund sein kann. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ad_man Mitglied freiberuflicher Entwicklungsing. (Fahrzeugtechnik, CSWP, CPPA))
   
 Beiträge: 1384 Registriert: 20.12.2003 SolidWorks 2023 SP5 mit Enterprise PDM , Windows 11, Dell Precision 3660, i7-12700K, 96 GB DDR-Ram, Quadro RTX A4000
|
erstellt am: 14. Jul. 2010 09:34 <-- editieren / zitieren --> Unities abgeben:          Nur für caxman
|
caxman Mitglied
 
 Beiträge: 270 Registriert: 06.08.2002 4GB RAM<P>Windows 7 32bit SWX 2008/2010
|
erstellt am: 14. Jul. 2010 09:54 <-- editieren / zitieren --> Unities abgeben:         
|
ad_man Mitglied freiberuflicher Entwicklungsing. (Fahrzeugtechnik, CSWP, CPPA))
   
 Beiträge: 1384 Registriert: 20.12.2003 SolidWorks 2023 SP5 mit Enterprise PDM , Windows 11, Dell Precision 3660, i7-12700K, 96 GB DDR-Ram, Quadro RTX A4000
|
erstellt am: 14. Jul. 2010 11:13 <-- editieren / zitieren --> Unities abgeben:          Nur für caxman
Hallo caxman, in deiner User-Form-Initialisierungsprozedur ist ein Fehler drin: CheckBoxPreliminary.Value = swLayer.Visible Wenn du diese Zeile auskommentierst, dann klappt es. Ich habe jetzt nicht nachgeschaut, was du erreichen willst, aber ich denke, damit kommst du weiter. ------------------ ========== Gruß Andreas ========== Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
caxman Mitglied
 
 Beiträge: 270 Registriert: 06.08.2002 4GB RAM<P>Windows 7 32bit SWX 2008/2010
|
erstellt am: 14. Jul. 2010 11:22 <-- editieren / zitieren --> Unities abgeben:         
Hallo Andreas, erst einmal vielen Dank für die hilfreiche Fehlersuche! Hast recht, wenn ich das auskommentiere dann funktionierts (erst mal). Damit soll erreicht werden dass wenn in dem Formular eine Checkbox (Vorabzug/Preliminary) angehakt wird (Standard ist Häkchen gesetzt)ein Stempel auf dem Schriftfeld erscheint dass diese Zeichunung noch nicht freigegeben ist. Habe ich das jetzt auskommentiert und setze das Häkchen dann kommt wieder der Laufzeitfehler. Was genau ist denn daran falsch, weil wie gesagt bisher hat's immer funktioniert. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
caxman Mitglied
 
 Beiträge: 270 Registriert: 06.08.2002 4GB RAM<P>Windows 7 32bit SWX 2008/2010
|
erstellt am: 14. Jul. 2010 11:56 <-- editieren / zitieren --> Unities abgeben:         
Hallo Andreas, die besten Fehler sind die die man selbst beheben kann! Der Hinweis "Vorabzug/Preliminary" wird über einen Layer ein-und ausgeblendet. Dieser Layer ist bei sehr alten Zeichnungen nicht vorhanden. Deshalb dieser Fehler. Wenn ich den Layer anlege dann funktioniert das ganze wieder. D.h. um ganz sicher zu gehen müsste eine Prüfung rein ob dieser Layer vorhanden ist und wenn nicht dann anlegen. Mal sehen ob ich das hinbekomme. Nochmals vielen Dank für deine Hilfe! caxman Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |