Hallo zusammen,
mein erster Beitrag hier, ich hoffe ihr könnt mir helfen:
Ich habe ein Bauteil, das mehrere Ausführungen kennt. Abhängig von der gewählten Ausführung werden Koordinatensysteme positioniert, an denen dann andere Formelemente ausgerichtet werden.
Ich habe mir das so gedacht, dass ich die Maße und Winkel aus einer Excel-Tabelle einlese :
Tabelle_Pfad="C:\Varianten"
KSYS1inX_Liste=ug_read_list(Tabelle_Pfad,"A5", FALSE) erzeugt eine Liste
KSYS1inX=nth(Variante_Index,KSYS1inX_Liste) wählt ein Listenelement aus
Das funktioniert super solange Zahlenwerte in Excel stehen. Jetzt möchte ich aber mit dem System eine Formel aus Excel auslesen.
Bei Variante 1 ist KSYS1inX immer 10 mm, bei der Variante 2 ist KSYS1inX jedoch abhängig von einem Ausdruck "Breite", der bereits in NX existiert. Daher schreibe ich "Breite" in die entsprechende Zelle in Excel. Der importierte Listenausdruck in Excel sieht dann folgendermaßen aus:
KSYS1inX_Liste={10,"Breite"}
Wenn die zweite Variante gewählt ist, heißt der Ausdruck dementsprechend:
KSYS1inX="Breite"
Der Ausdruck ist ein String und wird daher nicht als Formel interpretiert. Wie kann ich jetzt erreichen, dass NX den Ausdruck "Breite" als Variable interpretiert, d.h. dem Ausdruck KSYS1inX den Wert aus dem Ausdruck Breite zuweist?
Ich habe schon versucht den Listenausdruck als String auszulesen und anschließend mit der Funktion MakeNumber() in eine Zahl umzuwandeln, jedoch kommt dann die Fehlermeldung: Ausdruck ungültig zum Aktualisieren in NX. makeNumber(): String%s must be either an Integer or a Number. ...
Außerdem habe ich herausgefunden, dass die Formatierung der Zeile in Excel (Zahl, Text, ...) keinen Einfluss darauf hat, welchen Datentyp NX verwendet.
Hat jemand von Euch eine Idee?? Vielen Dank schon im Voraus!
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP