| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX |
| |
| Krones AG: Krones Biegen oder Nicht-Biegen – das ist die Frage (Solid Edge,Smap3D Plant Design) |
Autor
|
Thema: [NX5] Richtige Formel bei Anwenderausdruck (5469 mal gelesen)
|
Shindo Mitglied
Beiträge: 4 Registriert: 24.01.2011 NX5
|
erstellt am: 24. Jan. 2011 14:29 <-- editieren / zitieren --> Unities abgeben:
Hallo! Ich habe ein kleines Problem. Ich möchte in meiner Skizze einen gewissen Anwenderausdruck erzeugen, der es mir erlaubt, bei einem Mass nur einen gewissen Zahlenwert anzugeben! SH= Schachtelhöhe Beispiel: SH= 27 if (SH<70)(148-SH)else(error) Diese Formel funktioniert...ich habe hiermit eingestellt, dass wenn ich in den Anwenderausdrücken beim Wert "SH" eine grössere Zahl als 70 eingebe, ein Fehler kommt! Nun möchte ich, dass ich einen Fehler bekomme, wenn ich einen Wert eingebe der kleiner als "17" ist ebenso wenn der Wert grösser als "70 ist! Wie schreibe ich dann die Formel? Habe einige Variationen ausprobiert: if (17>SH<70)(148-SH)else(error).....funktioniert nicht if (17>SH)or(SH<70)(148-SH)else(error).....funktioniert nicht if (17>SH)and(SH<70)(148-SH)else(error).....funktioniert nicht Weiss hier jemand wie ich die Formel im NX5 eingeben müsste? Vielen Dank im vorraus Shindo Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bbking Mitglied
Beiträge: 1419 Registriert: 30.01.2002
|
erstellt am: 24. Jan. 2011 15:21 <-- editieren / zitieren --> Unities abgeben: Nur für Shindo
hallo Shindo! erstens: willkommen imm WBF! zweitens: bitte sys-info ausfüllen, damit bei zukünftigen fragen nicht die fragerei nach der exakten installierten version losgeht. drittens: das spielt hierbei (ausnahmsweise ) mal keine rolle, weil if-abfrage immer nur mit einer bedingung (erfüllt oder eben nicht) funktionieren. wie z.b. in excel auch. d.h. du musst die if-abfragen ineinander verschachteln. dazu gab's hier im forum mit sicherheit die eine oder andere diskussion. HTH!! ------------------ NX5.0.4.1 MP6 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
schulze Ehrenmitglied V.I.P. h.c. CAD/CAE Manager
Beiträge: 2312 Registriert: 26.03.2001 TC_8.1, NX6 ( und andere )
|
erstellt am: 24. Jan. 2011 16:01 <-- editieren / zitieren --> Unities abgeben: Nur für Shindo
>>Weiss hier jemand wie ich die Formel im NX5 eingeben müsste? Ich hab's nicht getestet, aber laut Online-Hilfe steht "|" für ein logisches ODER und "&" für ein logisches UND. Dazu fehlt noch ein Paar von Klammern. Versuch's mal so: if ((17<SH)&(SH<70))(148-SH)else(error)..... ------------------ R.Schulze Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bbonisch Mitglied Maschinenbautechniker
Beiträge: 1053 Registriert: 25.02.2005
|
erstellt am: 25. Jan. 2011 07:47 <-- editieren / zitieren --> Unities abgeben: Nur für Shindo
Es funktioniert so wie R.Schulze geschrieben hat, du kannst aber auch verschachteln. if(SH<=17)(5)else(if(SH>=70)(5)else(error)) kleine Hilfe zum Verschachteln, solltest du mehrere brauchen: ich fülle die ganzen Formeln aus, die ich benötige und diese kopier ich dann in die entsprechende Stelle der Formel, also hier p2 kopieren und in für p2 einsetzen, dann p1 kopieren und in p1 einsetzen. MAche ich immer dann wenn ich die Übersicht verliere, was bei 5 oder mehrenen Verschachtlungen ganz schnell passieren kann. p2=if(SH=30)(15)else(error) p1=if(SH=20)(10)else(p2) if(SH=10)(5)else(p1) Ergebnis:if(SH=10)(5)else(if(SH=20)(10)else(if(SH=30)(15)else(error)))
------------------ Gruß bbonisch Wer nicht träumt, der ist tot. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Shindo Mitglied
Beiträge: 4 Registriert: 24.01.2011 NX5
|
erstellt am: 25. Jan. 2011 08:16 <-- editieren / zitieren --> Unities abgeben:
@bbking: Vielen Dank! @schulze Herzlichen Dank! Es hat mit "&" funktioniert! Darf ich fragen wo du die Infos in der Online-Hilfe gefunden hast? Weil jetzt möchte ich eine Stufe komplexer gehen. Ich möchte nun, dass ich einen Minimal- und Maximalwert habe, der eingegeben werden muss sonst "Error" (erstes Beispiel) UND in der oberen und unteren Hälfte, jeweils eine andere Rechenformel ist! SL= Schachtellänge Beispiel: (funktioniert natürlich nicht) If ((((SL>105.5) & (SL<142.5)) ((SL/2)-37) else (error)) | (((SL>142) & (SL<240.5)) ((SL/2)-55) else (error))( ok/run/... ) else(error) Wenn ich wüsste, wie die Begriffe heissen, könnte ich besser tüfteln aber habe jetzt in der Online-Hilfe keine Übersicht gefunden hierfür! :/ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Shindo Mitglied
Beiträge: 4 Registriert: 24.01.2011 NX5
|
erstellt am: 25. Jan. 2011 08:23 <-- editieren / zitieren --> Unities abgeben:
@bbonisch sry aber hab zu lang für Antwort gebraucht! ^^ Deine Variante könnte meinem komplexeren Beispiel helfen! Werde mal paar testformeln machen und schauen ob ichs hinbekomme und ergänze mit Edit mein Ergebnis! LG Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bbonisch Mitglied Maschinenbautechniker
Beiträge: 1053 Registriert: 25.02.2005
|
erstellt am: 25. Jan. 2011 08:54 <-- editieren / zitieren --> Unities abgeben: Nur für Shindo
gib mal in der Hilfe "Syntax der Operatoren für Ausdrücke" ein und dann kannste noch nach den Optionen schauen, musst dich etwas durchhangeln dann kannste einiges nachlesen. ------------------ Gruß bbonisch Wer nicht träumt, der ist tot. Edit: falsches Bild [Diese Nachricht wurde von bbonisch am 25. Jan. 2011 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Shindo Mitglied
Beiträge: 4 Registriert: 24.01.2011 NX5
|
erstellt am: 25. Jan. 2011 09:12 <-- editieren / zitieren --> Unities abgeben:
@bbonisch Vielen Dank! Habe das Rätsel geknackt. Lösung: If ((SL>106) & (SL<142)) ((SL/2)-37) else ( if ((SL>142.5) & (SL<240.5)) ((SL/2)-55) else (error)) Deine "Schachtel" Variante und Beispiele, haben mich auf eine Idee und des Rätsels Lösung geführt! Danke nochmals an alle beteiligten! LG Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |