Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  VBA prüfen ob aktives Fenster ein Produkt ist

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:  VBA prüfen ob aktives Fenster ein Produkt ist (893 mal gelesen)
Esterbauer
Mitglied



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

Beiträge: 62
Registriert: 26.09.2008

erstellt am: 18. Sep. 2018 10: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

Hallo ,

Ich habe folgendes Problem

Ich möchte per Marko Prüfen ob das aktive Fenster ein Produkt ist, wenn ja soll mit dem Code fortfahren wenn nicht soll er das Makro beenden.

wer kann mir da helfen.

Danke im voraus .

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

afaliwan
Mitglied
Entwicklungsingenieur

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

Beiträge: 6
Registriert: 10.06.2016

CatiaV5 R24 SP01
Windows 7 Professionel x64
Service Pack 1
DirectX 11.0
i7-2600K CPU @ 3.40GHz
Gigabyte Z68MA-D2H-B3
DDR3 16 GBytes
NVIDIA Quadro K4000
3072 MBytes GDDR 5

erstellt am: 18. Sep. 2018 11:51    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 Esterbauer 10 Unities + Antwort hilfreich

Hallo,

ich mach das immer so:

Code:

Dim oRequestProduct As Document
Set oRequestProduct = CATIA.ActiveDocument

     Select Case TypeName(oRequestProduct)

            Case "ProductDocument"

            Case Else

                MsgBox "Kein Produkt im aktiven Fenster. Bitte gewünschtes Produkt öffnen.", 16

            Exit Sub

    End Select


 

------------------
"Die Genialität einer Konstruktion liegt in ihrer Einfachheit. Kompliziert bauen kann jeder." - Sergej P. Koroljow

[Diese Nachricht wurde von afaliwan am 18. Sep. 2018 editiert.]

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: 695
Registriert: 12.04.2003

Win10 x64
CATIA V5 R18, R19, R21, R27-29

erstellt am: 18. Sep. 2018 12:00    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 Esterbauer 10 Unities + Antwort hilfreich

Hallo,

If TypeName(CATIA.ActiveDocument) = "ProductDocument" then

Else

End if

oder auch als Select Case

Select Case TypeName(CATIA.ActiveDocument)
Case "ProductDocument":
Case "PartDocument":
Case "DrawingDocument":
Case Else:
End Select

Gruß
Randle

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

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

Esterbauer
Mitglied



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

Beiträge: 62
Registriert: 26.09.2008

erstellt am: 19. Sep. 2018 08:12    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

Danke nochmals für eure Hilfe

Ich habe das ganz anders gelöst.

If CATIA.Documents.Count = 0 then
MsgBox "Kein Dokument geöffnet, Bitte öffnen Sie ein Produkt"
Exit Sub
End if

Dim oDocument As Document
Set oDocument = CATIA.ActiveDocument

if TypeName(oDocument) = "PartDocument" Then
MsgBox "Falsche Dokumentart geöffnet. Bitte öffnen Sie ein Produkt"
Exit Sub

if TypeName(oDocument) = "DrawingDocument" Then
MsgBox "Falsche Dokumentart geöffnet. Bitte öffnen Sie ein Produkt"

Exit Sub
end if
end if

End Sub

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: 695
Registriert: 12.04.2003

Win10 x64
CATIA V5 R18, R19, R21, R27-29

erstellt am: 19. Sep. 2018 09:31    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 Esterbauer 10 Unities + Antwort hilfreich

Hallo,

das mit dem CATIA.Documents.Count könnte schief gehen weil CATIA nach dem Schließen eines Dokuments diese nicht aus der Documents Collection rausschmeißt.

Evtl. wird du hier mit CATIA.Windows.Count glücklicher. Allerdings könnte das immer noch der CATIA Desk sein.

Ich mache das meistens so:

Code:

Dim P_oPartDoc as PartDocument
On Error Resume Next
    Set P_oPartDoc = CATIA.ActiveDocument
    If Err.Number <> 0 Then
        MsgBox "No or wrong document loaded (supports CATParts only).", vbInformation, "Program abort"
        Exit Sub
    End If
On Error GoTo 0

Gruß
Randle

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

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)2023 CAD.de | Impressum | Datenschutz