Gunnar Mahnke-Sun Geschrieben 17. Juli Teilen Geschrieben 17. Juli (bearbeitet) Hallo liebe Community, ich habe Daten zur Lebensdauer von technischen Anlagen gesammelt und möchte nun durch Auswahl der Anlagenklasse und Erfassung des Baujahres in der smap die restliche Lebensdauer in Jahren berechnen. Formel aus meinen Überlegungen: übrige Lebensdauer = wenn (Technische Lebensdauer -(Letzte 4 Zeichen von Zeitstempel - Baujahr) > 0 dann Technische Lebensdauer -(Letzte 4 Zeichen von Zeitstempel - Baujahr) sonst "überschritten") Formel in smapone: IF(GREATERTHAN({DataRecordSelect_Anlage[Technische Lebensdauer]}-(SUB(2024, {Number_Baujahr}))),0), {DataRecordSelect_Anlage[Technische Lebensdauer]}-(SUB(2024, {Number_Baujahr})), "überschritten") Problem: Die Formel konnte nicht verarbeitet werden. Außerdem würde ich gerne das Baujahr aus dem zeitstempel ermitteln, aber die Formel RIGHT() erwartet Text. Wenn ich jetzt Timestamp mit TEXT() in Text umwandle, kann die Formel SUB() nicht mehr ausgeführt werden, weil hier wieder eine Zahl notwendig ist. Hat jemand eine elegantere Lösung? Wie habt ihr das aktuelle Jahr ermittelt? Ich würde mich sehr freuen. Im Moment füge ich erstmal die statische Zahl 2024 ein, um ein Problem weniger zu haben. Liebe Grüße, Gunnar Bearbeitet 17. Juli von Gunnar Mahnke-Sun genauere Beschreibung 2 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Lösung David Susami Geschrieben 17. Juli Lösung Teilen Geschrieben 17. Juli (bearbeitet) Hallo Gunnar, erstmal hast du in deiner Formel eine Klammer zu viel. Habe dies korrigiert und unten niedergeschrieben. Nun zu deinem Timestamp Problem. Gibt es einen spezifischen Grund weshalb Zeitstempel genutzt werden? Evtl. ist man in der Ausführung sogar schneller, wenn man das Baujahr (die 4 Ziffern) eintippen lässt. Alternativ kannst du mit SUB_PERIOD berechnen lassen. IF(GREATERTHAN({DataRecordSelect_Anlage[Technische Lebensdauer]}, SUB(2024, {Number_Baujahr}), 0), {DataRecordSelect_Anlage[Technische Lebensdauer]}, SUB(2024, {Number_Baujahr}), "überschritten") Bearbeitet 18. Juli von David Susami Formelfehler korrigiert 1 1 1 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Manuel Rühl Geschrieben 18. Juli Teilen Geschrieben 18. Juli Rechnen mit Zeiten, mein Lieblingsthema... 😉 @Gunnar Mahnke-Sun Das was du vorhast ist nachvollziehbar, funktioniert nur so leider nicht. Die Datentypen sind da zu unflexibel. Am ehesten kommt da noch die Lösung von @David Susami ran. Das setzt aber voraus, dass du daran denkst, das Jahr in der Formel nächstes Jahr auf 2025 zu setzen. Wenn man das Baujahr per Hand eingibt, muss auch das aktuelle Jahr als Zahleneingabe erfasst werden. Wenn man das Jahr per Timestamp erfasst, muss auch das Baujahr als Timestamp erfasst werden mit Uhrzeit. 1 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Gunnar Mahnke-Sun Geschrieben 18. Juli Autor Teilen Geschrieben 18. Juli Ein Fehler war anscheinend auch, dass ich ein "-" verwendet habe. Hier habe ich jetzt auch auf Sub umgestellt, aber dann wird mir die Formel immer noch als unvollständig angezeigt. IF(GREATERTHAN(a,0), a, "überschritten") a = SUB({DataRecordSelect_Anlage[Technische_Lebensdauer]},(SUB(2024, {Number_Baujahr}))) Entweder habe ich ein Brett vor dem Kopf, oder ich komme so wirklich nicht ans Ziel. Ich werde es mir jetzt einfach machen und nur die Technische Lebensdauer in die Smap integrieren. Das weiterverarbeiten dieser Information mache ich dann in PowerQuery. Vielen Dank für die Verbesserungsvorschläge! Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Manuel Rühl Geschrieben 18. Juli Teilen Geschrieben 18. Juli Ich vermute, dass da noch ein TEXT um a rum muss. Aber nicht innerhalb des GREATERTHAN sondern in die then-condition: IF(GREATERTHAN(a,0), TEXT(a), "überschritten") 1 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Gunnar Mahnke-Sun Geschrieben 18. Juli Autor Teilen Geschrieben 18. Juli vor 3 Minuten schrieb Manuel Rühl: Ich vermute, dass da noch ein TEXT um a rum muss. Aber nicht innerhalb des GREATERTHAN sondern in die then-condition: IF(GREATERTHAN(a,0), TEXT(a), "überschritten") Leider hat das nicht geholfen. 🙂 1 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Gunnar Mahnke-Sun Geschrieben 18. Juli Autor Teilen Geschrieben 18. Juli Wäre echt klasse, wenn die Fehlermeldung etwas spezifischere Hinweise gibt, damit man gezielter korrigieren kann. 🤔 1 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Manuel Rühl Geschrieben 18. Juli Teilen Geschrieben 18. Juli Dann mach mal die Klammern bei dem zweiten SUB() weg: SUB({DataRecordSelect_Anlage[Technische_Lebensdauer]},SUB(2024, {Number_Baujahr})) 1 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Gunnar Mahnke-Sun Geschrieben 18. Juli Autor Teilen Geschrieben 18. Juli Das hat etwas gebracht. Die Funktion "SUB" erwartet einen Wert vom Typ Zahl. Das bedeutet wohl, dass ich nicht mit Zahlen aus einem DSAB rechnen kann, weil diese als Text verstanden werden? Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
David Susami Geschrieben 18. Juli Teilen Geschrieben 18. Juli (bearbeitet) Doch es kann mit Zahlen aus einer DSAB gerechtet werden. Setzt jedoch voraus, dass die Spalte des DSAB auch als Zahl formatiert ist. Siehe angehängten Screenshot. Dies kannst du beim Hochladen der Excel in der Vorschau auswählen. Danach leider nicht mehr. Wäre evtl. ein Feature-Wunsch. 😛 Nachtrag: Die Spalte kann nicht als Zahl formatiert werden, wenn darin Zeichen enthalten sind, die nicht als Zahl gelten. Also falls du hier auf Probleme stößt ist dies höchstwahrscheinlich die Fehlerquelle. Ansonsten den einfachen Weg gehen und die Spalte in Excel im Vorfeld als Zahl formatieren, das macht es später einfacher. Bearbeitet 18. Juli von David Susami Nachtrag 1 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Bitte melde Dich an, um einen Kommentar zu hinterlassen
Du kannst nach der Anmeldung einen Kommentar hinterlassen
Jetzt anmelden