Hot News aus dem CAD.de-Newsletter:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Fit All In auf allen Zeichungsblättern

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:   Fit All In auf allen Zeichungsblättern (200 mal gelesen)
zielegstein
Mitglied


Sehen Sie sich das Profil von zielegstein an!   Senden Sie eine Private Message an zielegstein  Schreiben Sie einen Gästebucheintrag für zielegstein

Beiträge: 3
Registriert: 26.02.2020

CatiaV5R27, HP mobile Workstation

erstellt am: 26. Feb. 2020 09:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Zusammen,
momentan arbeite ich an einem CATSCript Makro mit dem die Inhalte der Zeichnungsblätter alle mittels FitAllIn eingepasst werden sollen.

Für eine einzelnes Blatt, welches bereits durch den User angeklickt wurde, funktioniert das ganz gut.
Nur leider kann ich nicht alle Blätter per Makro "durcharbeiten" lassen obwohl es mir gelingt die Blattnamen einzeln auszulesen.
Die Methode .Activate funktionieren nicht und werfen einen Fehler aus (daher sind beider versuche auskommentiert).

Mein Script sieht derzeit so aus:
'Geometrie einpassen (Fit all in)
'****************************************
Dim DrwSel As Selection
Set DrwSel = drawingDocument1.Selection
DrwSel.Search "CATDrwSearch.DrwSheet,all"
Dim Z As Integer

For Z = 1 To DrwSel.Count
Set Sheet = DrwSel.Item(Z).Value
SheetName = Sheet.Name

MsgBox SheetName
'Set Sheet = DrwSel.Item(Z).Activate
'Set Sheet = DrwSel.Item(Z).ActiveSheet

CATIA.StartCommand "Fit All In"
CATIA.RefreshDisplay = True
Next

Habt kennt Ihr eine Methode wie ich das per CATScript gelöst bekomme?

Vielen Dank und viele Grüße
Der Ziegelstein

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Moderator
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 10957
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 26. Feb. 2020 09:54    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für zielegstein 10 Unities + Antwort hilfreich

Servus

Willkommen im Forum.
Probier es mal so:

Code:
Sub CATMain()

Dim oDrwDoc As DrawingDocument
Dim oDrwSheet As DrawingSheet

Set oDrwDoc = CATIA.ActiveDocument

For Each oDrwSheet In oDrwDoc.Sheets
  oDrwSheet.Activate
  CATIA.StartCommand "Fit All In"
  'CATIA.StartCommand "Alles einpassen"
Next

End Sub


ggf noch einbauen dass am Ende das erste Blatt oder das zuvor aktive Blatt wieder aktiv gesetzt wird.

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Randle
Mitglied
CAD/PLM Consultant


Sehen Sie sich das Profil von Randle an!   Senden Sie eine Private Message an Randle  Schreiben Sie einen Gästebucheintrag für Randle

Beiträge: 567
Registriert: 12.04.2003

Win7 Pro x64/Win10
CATIA V5 R18, R19, R21, R24, R26

erstellt am: 26. Feb. 2020 10:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für zielegstein 10 Unities + Antwort hilfreich

Hallo,

was das aktivieren der Zeichnungsblätter angeht, versuche es doch mal so...

Code:

Sub CATMain()

Dim oDrwDoc As DrawingDocument
Dim oDrwSheet As DrawingSheet

Set oDrwDoc = CATIA.ActiveDocument

For Each oDrwSheet In oDrwDoc.Sheets
    oDrwSheet.Activate   
Next

End Sub


Gruß
Randle

------------------
Wer für nichts steht, fällt für alles!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

zielegstein
Mitglied


Sehen Sie sich das Profil von zielegstein an!   Senden Sie eine Private Message an zielegstein  Schreiben Sie einen Gästebucheintrag für zielegstein

Beiträge: 3
Registriert: 26.02.2020

CatiaV5R27, HP mobile Workstation

erstellt am: 26. Feb. 2020 12:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Zusammen,
vielen Lieben Dank für die schnelle Hilfe, es funktioniert. :-) Die erste Antwort war bereits der Treffer.
Da werden sich die Konstrukteure aber freuen.

Viele Grüße
Der Ziegelstein

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2020 CAD.de | Impressum | Datenschutz