abbrechen
Suchergebnisse werden angezeigt für 
Stattdessen suchen nach 
Meintest du: 
DE
abbrechen
Suchergebnisse werden angezeigt für 
Stattdessen suchen nach 
Meintest du: 
Legat
Booster

Verschachtelte IF-Formel in Listenberechnung

Hallo, ich habe eine Eigenschaften-Berechnung erstellt, die in einer Liste dazu führt eine Eigenschaften (NUF - aus Optionenset) zu überprüft und bei positiver Überprüfung eine Fläche auszugeben, und bei negativer, einen Wert von 0,00 auszugeben (Fläche Minus Fläche):

 

IF ( {Property:Auswertungselemente/Raumkategorie} = "NUF"; {Property:Raum/Gemessene Nettofläche}; {Property:Raum/Gemessene Nettofläche} - {Property:Raum/Gemessene Nettofläche} )

 

Das funktioniert!

 

Nun möchte ich aber der Berechnung ein "OR" hinzufügen, da ich 2 Eigenschaften (NUF und NUF2) in einer Berechnung überprüfen will und, wie oben beschrieben, bei positiver RÜckmeldung die Fläche ausgeben möchte.. Meiner Meinung nach müsste es wie folgt aussehen:

 

IF ( {Property:Auswertungselemente/Raumkategorie} = "NUF" OR {Property:Auswertungselemente/Raumkategorie} = "NUF 2" ; {Property:Raum/Gemessene Nettofläche}; {Property:Raum/Gemessene Nettofläche} - {Property:Raum/Gemessene Nettofläche} )

 

Das funktioniert aber nicht. Kann eine Eigenschaftenberechnung über "IF" keine Verschachtelung berechnen oder mache ich etwas falsch?

 

Ich hoffe ich bin bei Programmierung richtig, auch wenn es sich um eine eher einfache Berechnungsformel handelt. Ich wüsste sonst nicht welches Board ich wählen sollte.


Screenshot 2024-12-12 162128.jpg
2 AKZEPTIERTE LÖSUNGEN

Akzeptierte Lösungen

Ja, Du machst was falsch.

Sie auch im Handbuch.

Funktionen in Ausdrücke/ Logische Funktionen

OR (Logikelement1|;[Logikelement2],...)

 

 

„Wovon man nicht sprechen kann, darüber muss man schweigen"

Lösung in ursprünglichem Beitrag anzeigen

Legat
Booster

Okay, habe die Lösung gefunden. Mir war nicht klar, dass AND/OR nur TRUE/FALSE ausgeben kann. Ich habe es über IFS gelöst. Den Tipp mit 0m2 nehme ich gerne auf. Danke. Meine Lösung:

 

IFS ( {Property:Auswertungselemente/Raumkategorie} = "NUF 2"; {Property:Raum/Gemessene Nettofläche}; {Property:Auswertungselemente/Raumkategorie} = "NUF"; {Property:Raum/Gemessene Nettofläche}; TRUE; 0m2 )

Lösung in ursprünglichem Beitrag anzeigen

5 ANTWORTEN 5

Ja, Du machst was falsch.

Sie auch im Handbuch.

Funktionen in Ausdrücke/ Logische Funktionen

OR (Logikelement1|;[Logikelement2],...)

 

 

„Wovon man nicht sprechen kann, darüber muss man schweigen"
Stefan L_
Rockstar

@Legat  schrieb:

... und bei negativer, einen Wert von 0,00 auszugeben (Fläche Minus Fläche):

 

IF ( {Property:Auswertungselemente/Raumkategorie} = "NUF"; {Property:Raum/Gemessene Nettofläche}; {Property:Raum/Gemessene Nettofläche} - {Property:Raum/Gemessene Nettofläche} )


'Fläche minus Fläche' ist originell! 🙂

Ein einfaches 0m2 reicht aber, und ist viiiiieeeeel schneller:

IF ( {Property:Auswertungselemente/Raumkategorie} = "NUF"; {Property:Raum/Gemessene Nettofläche}; 0m2 )

Stefan - AC ...-29GER, WIN11
Legat
Booster

Okay, habe die Lösung gefunden. Mir war nicht klar, dass AND/OR nur TRUE/FALSE ausgeben kann. Ich habe es über IFS gelöst. Den Tipp mit 0m2 nehme ich gerne auf. Danke. Meine Lösung:

 

IFS ( {Property:Auswertungselemente/Raumkategorie} = "NUF 2"; {Property:Raum/Gemessene Nettofläche}; {Property:Auswertungselemente/Raumkategorie} = "NUF"; {Property:Raum/Gemessene Nettofläche}; TRUE; 0m2 )

Stefan L_
Rockstar

Bin sowieso ein Fan von IFS; dauert nie lange und es kommt der dritte, vierte Fall dazu...

IF wäre aber - gucksu Thorsten - auch gegangen:

IF (
  OR (
    {Property:Auswertungselemente/Raumkategorie} = "NUF";
    {Property:Auswertungselemente/Raumkategorie} = "NUF 2"
    ) ; {Property:Raum/Gemessene Nettofläche};
  0m2
)
Stefan - AC ...-29GER, WIN11
torben_wadlinger
Virtuoso

Ich habe mich immer gewundert, warum es kein case gibt. 

wieder was gelernt. Danke, Mann!

Archicad seit v5.0 bis v29 | macOS und Windows | BIMCloud selbst gehostet | BIM-zertifiziert gemäß BAK und BIngK | BIM-Referent AK RLP

Keine Antwort gefunden?

Andere Beiträge
im Board ansehen

Zurück zum Board

Neueste Lösungen durchsuchen

Akzeptierte Lösungen zeigen

Eine neue Diskussion starten!

Neues Thema erstellen