| |
![](https://ww3.cad.de/php/image.php?resolution=width:20050) | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
| |
![](https://ww3.cad.de/php/image.php?resolution=width:16185) | 3DEXPERIENCE Conference 2024 | München, Veranstaltung am 16.10.2024 |
Autor
|
Thema: GetCurrentSheet bring nur Fehler 438 :-( (2020 mal gelesen)
|
koehlerax Mitglied Systemadmin
![](/foren/ubb/star3.gif)
![Schreiben Sie einen Gästebucheintrag für koehlerax](/foren/ubb/pmimages/gbu.gif) Beiträge: 25 Registriert: 11.11.2002 Dell Precision 350 (P4 3,06GHz HT aktiv) PNY FX5900Ultra 256MB RAM 1GB HD IDE 80GB WinXP SP1 SWX 2001Plus SP4.1 Netz 100MBit
|
erstellt am: 14. Mrz. 2003 11:08 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif)
Also ich bekomme das mit der aktuellen Blattnummer einfach nicht hin. Schon der Befehl "GetCurrentSheet" bringt nur Fehler und ich weiss echt nicht wieso? :-( So sieht es aus: Set swApp = CreateObject("SldWorks.Application") Set PartActive = swApp.ActiveDoc MsgBox PartActive.GetCurrentSheet() Dann kommt der Fehler: Laufzeitfehler '438' Objekt unterstüzt diese Eigenschaft oder Methode nicht Eigentlich hatte ich ja die aktuelle Blattnummer erwartet so wie man auch bei: MsgBox PartActive.GetSheetCount() die Gesamtzahl an Seiten bekommt. Gruß KoehlerAx
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)
![](/foren/avatars/StefanBerlitz.gif)
![Schreiben Sie einen Gästebucheintrag für StefanBerlitz](/foren/ubb/pmimages/gbu.gif) Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 14. Mrz. 2003 12:59 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif) Nur für koehlerax
Hallo KoehlerAx, ich verstehe nicht genau, was du möchtest (ich meine, ich verstehe nicht, was du unter Blattnummer meinst ). Aber warum du den Fehler bekommst kann ich dir erklären: mit GetCurrentSheet bekommst du als Rückgabewert ein Objekt (genauer einen Objektpointer), MsgBox braucht als Parameter aber einen String. Das du etwas anderes (nämlich ein Zahl?) erwartet hast wundert mich etwas, in der API Hilfe steht das genau so drin ... Ich hoffe zumindest schon mal die Fehlermeldung aufgeklärt zu haben, vielleicht kann ich noch weiter helfen, wenn ich verstehe, was du mit Blattnummer meinst. Ciao, Stefan
------------------ Inoffizielle deutsche SolidWorks Hilfeseite http://solidworks.cad.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
koehlerax Mitglied Systemadmin
![](/foren/ubb/star3.gif)
![Schreiben Sie einen Gästebucheintrag für koehlerax](/foren/ubb/pmimages/gbu.gif) Beiträge: 25 Registriert: 11.11.2002 Dell Precision 350 (P4 3,06GHz HT aktiv) PNY FX5900Ultra 256MB RAM 1GB HD IDE 80GB WinXP SP1 SWX 2001Plus SP4.1 Netz 100MBit
|
erstellt am: 14. Mrz. 2003 13:03 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif)
Ja OK ich habe das auch gelesen in der API ![Programmier- und Anwendungsschnittstelle (Application Programming Interface)](/foren/ubb/glossar.gif) Hilfe. Aber wie bekomme ich denn das was ich im SWX ![SolidWorks](/foren/ubb/glossar.gif) mit dieser Zeile machen kann im VB hin? $PRP:"SW-Aktuelles Blatt(Current Sheet)" Also einfach welches Blatt im Moment aktiv ist (bei einem mehrblättrigen Drawing) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Thomas Rolf Mitglied Dipl.-Ing. / CAD-Admin
![](/foren/ubb/star3.gif) ![](/foren/ubb/star3.gif)
![Schreiben Sie einen Gästebucheintrag für Thomas Rolf](/foren/ubb/pmimages/gbu.gif) Beiträge: 189 Registriert: 02.07.2001 SWX 2015 SP4.0
|
erstellt am: 14. Mrz. 2003 13:06 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif) Nur für koehlerax
Hallo KoehlerAx; Getcurrentsheet gibt einen Verweis auf das Sheet-Objekt zurück. Ein Objekt kann aber mit einem Msgbox... nicht ausgegeben werden. Versuch doch mal: Set swApp = CreateObject("SldWorks.Application") Set PartActive = swApp.ActiveDoc MsgBox PartActive.GetCurrentSheet.getname Vielleicht bringt das das gewünschte Ergebnis. Gruß Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)
![](/foren/avatars/StefanBerlitz.gif)
![Schreiben Sie einen Gästebucheintrag für StefanBerlitz](/foren/ubb/pmimages/gbu.gif) Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 14. Mrz. 2003 13:21 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif) Nur für koehlerax
Hallo KoehlerAx, ah ja, jetzt verstehe ich was du meinst. Das ist etwas komplizierter, dafür gibt es AFAIK keine direkte Abfrage. Du musst wie Thomas gezeigt hat den Namen des Blattes holen und merken, dann über alle Blattnamen drüberlaufen und mitzählen, wann du das Blatt erwischt hast, dass genauso heißt wie dein aktives Blatt. Das sieht dann so aus:
Code:
Sub main() Dim swApp As Object Dim DrawingDoc As Object Dim SheetCount As Long Dim SheetNames As Variant Dim ActiveSheetName As String Dim i, BlattNummer As Long Set swApp = CreateObject("SldWorks.Application") Set DrawingDoc = swApp.ActiveDoc SheetCount = DrawingDoc.GetSheetCount SheetNames = DrawingDoc.GetSheetNames ActiveSheetName = DrawingDoc.GetCurrentSheet.GetName For i = 1 To SheetCount If SheetNames(i - 1) = ActiveSheetName Then BlattNummer = i Next i MsgBox BlattNummer End Sub
Ciao, Stefan ------------------ Inoffizielle deutsche SolidWorks Hilfeseite http://solidworks.cad.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
![](https://ww4.cad.de/Ads/adview.php?what=zone:16178&n=aee1ae73)
| Werkstudent Process Engineering (m/w/d) | Die Unternehmensvision von QIAGEN ist es, Verbesserungen im Leben zu ermöglichen. Wir begeistern uns für unsere Berufung, Wissenschaft und Gesundheitsversorgung entscheidend voranzubringen. Wir sind immer noch die Unternehmergesellschaft, als die wir begonnen haben, und haben heute eine Größe erreicht, die es uns ermöglicht, unsere ganze Kraft auf viele Initiativen und unsere weltweite Präsenz zu richten.... | Anzeige ansehen | Weitere: Administration und Sekretariat |
|
koehlerax Mitglied Systemadmin
![](/foren/ubb/star3.gif)
![Schreiben Sie einen Gästebucheintrag für koehlerax](/foren/ubb/pmimages/gbu.gif) Beiträge: 25 Registriert: 11.11.2002 Dell Precision 350 (P4 3,06GHz HT aktiv) PNY FX5900Ultra 256MB RAM 1GB HD IDE 80GB WinXP SP1 SWX 2001Plus SP4.1 Netz 100MBit
|
erstellt am: 14. Mrz. 2003 13:31 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif)
|