Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Feste Werte aus Tabelle den Daten im Makro zuweisen

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:  Feste Werte aus Tabelle den Daten im Makro zuweisen (1845 mal gelesen)
miezeka
Mitglied
Ingenieurin


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

Beiträge: 44
Registriert: 30.09.2008

CATIA V5R16SP5
Catia V5 R18<P>Win XP Prof

erstellt am: 01. Okt. 2008 11: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


tabelle_daten.png

 
HAllo

Habe da so eine tolle Herausforderung :-)
Ich versuche gerade ein Makro zusamen zu basteln.
Und zwar möchte ich meine Werte die ich in einer Tabelle konstruiert habe ins CATIA einlesen und diese Werte entsprechen Zb den Werten von einer Offsetplane oder einem Winkel oder einem Punktabstand auf einer Linie.
Die Werte die eingelesen werden sind fest.
Auch die Frage ist der Zuweisung der der eigenschaft(deg, mm, kg oder so)
Dies ist zwar so ähnlich wie eine Konstruktionstabelle jedoch werden erst meine Elemente durch das Makro erst erzeugt.

Hier mein Text

(nicht erschrecken, ein wenig Chaotisch!)

' Publications-------------------------------------------------------------------
Public CancelVar1

'Grunddeklarationen--------------------------------------------------------------
Dim documents1 As Documents
Dim partDocument1 As PartDocument
Dim part1 As Part
Dim HybridBodies1 As HybridBodies

Dim hybridShapeFactory1 As HybridShapeFactory
Dim Hybridbodies2 As HybridBodies

'Referenzen
Dim ref1, ref2, ref3 As Reference

'---Originalebenen deklarieren---
Dim PlaneYZ, PlaneZX, PlaneXY As HybridShapePlaneExplicit

'---Parameter Deklaration---
Dim parameters As parameters
Dim AbstandX, AbstandY, AbstandZ, Scharnierabstand As Length
Dim NeigungX, NeigungY, Oeffnungswinkel As Integer


Sub CATMain()

CancelVar1 = False

'---------------------------------------------------------------------------------
'Untersuchung starten--------------------------------------------------------

Dim Msg, Style, Title, Response, MyString
Msg = "Untersuchung starten ?"    ' Define message.
Style = vbYesNo  ' Define buttons.
Title = "MsgBox"    ' Define title.
Response = MsgBox(Msg, Style, Title)
If Response = vbYes Then
    MyString = "Yes"    ' Bei Ja wird ein neues Fenster eingeblendet


'--------------------------------------------------------------------------------
'Grunddeklaration----------------------------------------------------------------

Set documents1 = CATIA.Documents
Set partDocument1 = documents1.Item("ADAPTER.CATPart")
Set part1 = partDocument1.Part
Set HybridBodies1 = part1.HybridBodies

'---GeoSet erzeugen---
Dim Design As HybridBody
Set Design = HybridBodies1.Add()
Design.Name = "Design"
Set parameters = part1.parameters


'--------------------------------------------------------------------------------
'Öffnen der Tabelle und verändern dieser---------------------------------------

Dim MyXL As Object
Set MyXL = CreateObject("Excel.Application")
Set MyXL = GetObject("K:\G_Projekte\Projekte_Team_Rohbau\Tueren BY624\Designtabelle-Fuge.xls")
MyXL.Application.Visible = True
MyXL.Parent.Windows(1).Visible = True

'Achtung hier sollte die Zuweisung sein!------------
AbstandX = Zelle
AbstandY = Zelle
AbstandZ = Zelle

'Ebenen Erzeugen
Set hybridShapeFactory1 = part1.HybridShapeFactory

Dim originElements1 As OriginElements
Set originElements1 = part1.OriginElements


Set PlaneYZ = originElements1.PlaneYZ

Set ref1 = part1.CreateReferenceFromObject(PlaneYZ)

Dim Ebene_in_X As HybridShapePlaneOffset
Set Ebene_in_X = hybridShapeFactory1.AddNewPlaneOffset(ref1, AbstandX, False)

Design.AppendHybridShape Ebene_in_X

part1.InWorkObject = Ebene_in_X

part1.Update

Set PlaneZX = originElements1.PlaneZX
Set ref2 = part1.CreateReferenceFromObject(PlaneZX)

Dim Ebene_in_Y As HybridShapePlaneOffset
Set Ebene_in_Y = hybridShapeFactory1.AddNewPlaneOffset(ref2, AbstandY, False)

Design_Work.AppendHybridShape Ebene_in_Y

part1.InWorkObject = Ebene_in_Y

part1.Update

Set PlaneXY = originElements1.PlaneXY
Set ref3 = part1.CreateReferenceFromObject(PlaneXY)

Dim Ebene_in_Z As HybridShapePlaneOffset
Set Ebene_in_Z = hybridShapeFactory1.AddNewPlaneOffset(ref3, AbstandZ, False)

Design.AppendHybridShape Ebene_in_Z

part1.InWorkObject = Ebene_in_Z

part1.Update


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

miezeka
Mitglied
Ingenieurin


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

Beiträge: 44
Registriert: 30.09.2008

CATIA V5R16SP5
Catia V5 R18<P>Win XP Prof

erstellt am: 01. Okt. 2008 13:40    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

Hmm
da hier noch nicht so viele Leute geschrieben haben
will ich nur wissen wie ich in Catia meine Tabelle aufmache, Werte verändere und diese schließe ich
--> das habe ich mittlererweile geschaft.
Aber Wie spreche ich nochmal die Tabelle an und sage mir, wetzte den Wert welcher in der Tabelle die Zelle B2:A1 entspricht einem Buchstaben zu.
Dieser Buchstabe entspricht hier meinem Offsetabstand, welchen ich dann veränder.
Gruß Vi

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

miezeka
Mitglied
Ingenieurin


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

Beiträge: 44
Registriert: 30.09.2008

CATIA V5R16SP5
Catia V5 R18<P>Win XP Prof

erstellt am: 01. Okt. 2008 14:16    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

also habs schon selbst gelöst!

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

Jens Hansen
Mitglied
Senior Consult


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

Beiträge: 1055
Registriert: 05.08.2000

Win7
CATIA V5 R19
VB.Net
C#

erstellt am: 01. Okt. 2008 14: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 miezeka 10 Unities + Antwort hilfreich

Hallo,
solche Beiträge sind mir am liebsten 
SG
Jens Hansen

------------------
Inoffizielle CATIA-Hilfeseite
Private Seite
Xing

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

miezeka
Mitglied
Ingenieurin


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

Beiträge: 44
Registriert: 30.09.2008

CATIA V5R16SP5
Catia V5 R18<P>Win XP Prof

erstellt am: 09. Okt. 2008 18:42    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 nachdem ich die Tabelle Öffnen kann, wie kann ich meinem Programm sagen dass wen ich die Werte modifiziert habe, ich dann mit quit(einfach x Anklicken) aus dem excel rausgeh und er dann weiter mit meinen werten Arbeitet?!?

'--------------------------------------------------------------------------------
'Öffnen der Tabelle und verändern dieser-----------------------------------------

Dim Excel As Object
Dim WB As Workbook
Dim WS As Worksheet
Set Excel = CreateObject("Excel.Application")
Excel.Visible = True
Set WB = Excel.Workbooks.Open("E:\Parametereingabe.xls") ' Arbeitsmappe öffnen
Set WS = WB.Worksheets.Item(1) ' Tabelle holen


'Achtung hier  die Zuweisung der Zellen sein!-----------------------------------

AbstandX = CDbl(WS.Cells(1, 2).Value)
AbstandY = CDbl(WS.Cells(2, 2).Value)
AbstandZ = CDbl(WS.Cells(3, 2).Value)
NWinkel_1 = CDbl(WS.Cells(4, 2).Value)
NWinkel_2 = CDbl(WS.Cells(5, 2).Value)
Scharnierabstand = CDbl(WS.Cells(6, 2).Value)
ScharWinkel = CDbl(WS.Cells(7, 2).Value)
Tuerauf = CDbl(WS.Cells(8, 2).Value)

part1.Update

er arbeitet immer mit den zuvor gespeicherten Werten!
Exel.Workbooks.Save 'das funktioniert nicht!
Excel.Quit

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