Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Werte von Paramtern aus Excelmakro anpassen

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:  Werte von Paramtern aus Excelmakro anpassen (727 mal gelesen)
caprivi
Mitglied



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

Beiträge: 52
Registriert: 08.11.2011

Windchill 10.1 Versuchskaninchen
CATIA V5 R21

erstellt am: 02. Mrz. 2017 10:28    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,

ich habe ewig nichts mehr in CATIA programmiert und mache auch nichts kompliziertes in Excel-vba, daher möge man mir bitte verzeihen, dass die Lösung eventuell völlig offensichtlich ist.

Mit unterschiedlichen Kombinationen der Suchbegriffe "type mismatch parameter catia excel" habe ich mich jetzt 70 Minuten halb tot gesucht und nichts ähnliches gefunden.

Ich bekomme einen "Run-Time Error 13 Type mismatch" angezeigt, wenn ich versuche folgendes Sub innerhalb eines Excel_makros auszuführen, das mir von einem geöffneten Exceldokument in ein ebenfalls geöffnetes CATPart Werte von Parametern setzen soll:

Sub Catia_Transfer()

Dim CATIA As Object
Dim productDocument1 As Document
Dim partDocument1 As Document
Dim part1 As Part
Dim parameters1 As Parameters
Dim parameterSet1, parameterSet2 As ParameterSet
Dim parameterSets1 As ParameterSets

Set WB_Ziel = ThisWorkbook.Worksheets("PAX")

Set CATIA = GetObject("", "CATIA.Application")
AppActivate "CATIA V5"

Set partDocument1 = CATIA.ActiveDocument
Set part1 = partDocument1.Part
Set parameters1 = part1.Parameters              <- hier kommt der Fehler (der Block stammt so aus dem Catia Makrorecorder)
Set parameterSet1 = parameters1.RootParameterSet
Set parameterSets1 = parameterSet1.ParameterSets
Set parameterSet2 = parameterSets1.GetItem("BEAM1")
   

For m = 1 To 8
    Set paras1 = parameterSet2.Item(m)
    WB_Ziel.Cells(5, 2 + m).Value = parameterSet2.Item(m).Value
Next

End Sub

Für einen hilfreichen Tip wäre ich sehr dankbar.

Grüße
Caprivi

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: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 02. Mrz. 2017 10:33    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 caprivi 10 Unities + Antwort hilfreich

Servus
Welche Referenzen hast du denn in Excel-VBA zu Catia gezogen (Tools -> References)?
Probier mal parameters1 als Object zu dimensionieren.

Gruß
Bernd

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

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

caprivi
Mitglied



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

Beiträge: 52
Registriert: 08.11.2011

Windchill 10.1 Versuchskaninchen
CATIA V5 R21

erstellt am: 02. Mrz. 2017 13:47    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

Die Referenzen hatte ich alle gesetzt. Hieran hat es nicht gelegen. Aber mit der Definition als Objekt geht es immerhin schon mal weiter. Danke hierfür!

Allerdings habe ich durch Deine Hilfe jetzt auch  festgestellt, dass ich mir das ansprechen innerhalb des Parametersets "Beam1" scheinbar auch zu einfach vorgestellt habe.

Bei der Zeile

    Set para1 = parameterSet2.Item(m)

heißt es "Object does not support this property or method".

Wie spreche ich den Parameter denn korrekt über einen Laufparameter an? Die V5Automation-Hilfe verstehe ich an der Stelle leider nicht ganz.

Grüße
Caprivi

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: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 02. Mrz. 2017 14:22    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 caprivi 10 Unities + Antwort hilfreich


Marko_Watch_Parameter.PNG

 
Servus
Dabei hilft die eine Haltepunkt und das Watchfenster weiter (siehe Bild).
Vermutlich muss die Zeile
Code:
Set para1 = parameterSet2.DirectParameters.Item(m)
heißen

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

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

erstellt am: 03. Mrz. 2017 09:24    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 caprivi 10 Unities + Antwort hilfreich

Hallo,

ich vermute mal das es durch die Deklarierung der Variablen parameters1 liegt.

In der Excel API gibt es auch den Typ Parameters. D.h. es gibt mind. zwei Typen mit gleichen Namen in unterschiedlichen Bibliotheken. Welcher Typ soll nun deklariert werden? Offenbar nimmt EXCEL dann den "hauseigenen" Typ.

Sofern der Verweis auf die CATIA Bibliothek gesetzt ist sollte folgendes funktionieren:

Dim parameters1 as KnowledgewareTypeLib.Parameters

Hatte vor kurzem das selbe "Problem"

Gruß
Randle

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

caprivi
Mitglied



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

Beiträge: 52
Registriert: 08.11.2011

Windchill 10.1 Versuchskaninchen
CATIA V5 R21

erstellt am: 03. Mrz. 2017 11:30    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,

es läuft jetzt.

Vielen Dank Euch beiden!

Sowohl das Deklarieren als Objekt als auch das als KnowledgewareTypeLib-Parameter funktionieren.

Grüße
Caprivi

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