Registriert seit: 28.02.2021
Version(en): 2016
24.09.2022, 16:34
(Dieser Beitrag wurde zuletzt bearbeitet: 24.09.2022, 16:36 von ygoe.)
Hallo,
ich habe hier ein ziemlich kompliziertes mathematisches Problem zu lösen. Eigentlich wollte ich fragen, wie das mit einer Excel-Formel geht, aber ich kann es ja schon nichtmal beschreiben. Also gehe ich einen anderen Weg: Ich überlege mir die Lösungen für alle Zahlen von 1 bis 16 (mehr brauche ich nicht) und möchte die von Excel nur übersetzt haben.
So eine Übersetzung geht wie folgt:
1 → 1
2 → 1
3 → 3
4 → 1
5 → 4
6 → 3
7 → 4
8 → 2
9 → 4
10 → 2
11 → 4
12 → 3
usw.
Das könnte ich jetzt mit 16-fach verschachtelten Wenndann-Funktionen machen. Gibt's da nicht auch was einfacheres, wo ich nur beide Listen (oder nur die Ergebnisliste) angebe? Sozusagen das hier in JavaScript:
n => [1, 1, 3, 1, 4, 3, 4, 2, 4, 2, 4, 3, ...][n - 1]
Oder in SQL:
case n when 1 then 1 when 2 then 1 when 3 then 3 when 4 then 1 when 5 then 4 ... end
Registriert seit: 16.04.2014
Version(en): xl2016/365
24.09.2022, 16:39
(Dieser Beitrag wurde zuletzt bearbeitet: 24.09.2022, 16:39 von steve1da.)
Hola,
erstell die Liste mit den Werten und was daraus werden soll und hol dir die Werte mit einem Sverweis.
https://www.online-excel.de/excel/singsel.php?f=9Gruß,
steve1da
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
24.09.2022, 16:53
(Dieser Beitrag wurde zuletzt bearbeitet: 24.09.2022, 17:05 von schauan.)
Hallöchen,
oder auch ohne Liste im Prinzip so. Für gleiche Ergebnisse könnte man die Prüfungen auch mit ODER zusammenfassen.
Arbeitsblatt mit dem Namen 'Tabelle1' |
| A | B |
1 | 1 | 1 |
2 | 2 | 1 |
3 | 3 | 3 |
Zelle | Formel |
B1 | =(A1=1)*1+(A1=2)*1+(A1=3)*3 |
B2 | =(A2=1)*1+(A2=2)*1+(A2=3)*3 |
B3 | =(A3=1)*1+(A3=2)*1+(A3=3)*3 |
Verwendete Systemkomponenten: [Windows (64-bit) NT 10.00] / MS Excel 365 |
Diese Tabelle wurde mit Tab2Html (v2.7.2) erstellt. ©Gerd alias Bamberg |
oder noch einfacher nach diesem Prinzip - in geschweiften Klammern kommt Deine Ergebnisliste:
=--INDEX({"1"."1"."3"."1"."4"};1;A1)
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:1 Nutzer sagt Danke an schauan für diesen Beitrag 28
• ygoe
Registriert seit: 28.08.2022
Version(en): 365
Hi,
noch 'ne Variante (funktioniert allerdings nur mit einstelligen Ergebnissen:
=--TEIL("1131433424243...";A1;1)
Und noch eins:
=WAHL(A1;1;1;3;1;...)
Meist wird jedoch dies verwendet:
Die schreibst deine Ergebnisse untereinander z.B. von X2:X17 und verwendest dann die Formel
=INDEX($X$2:$X$17;A1)
Wenn deine Ausgangswerte höhere Zahlen sind, dann in Y2:Y17 die Ausgangswerte (aufsteigend sortiert) und in Z2:Z17 die Ergebnisse
=SVERWEIS(A1;$Y$2:$Z$17;2;WAHR)
Aber Achtung! Wenn hier ein nicht vorhandener Ausgangswert in A1 steht liefert die Formel dennoch ein Ergebnis und zwar vom nächst kleineren Wert. Ist die Ausgangsliste nicht sortiert wird meist ein falsches Ergebnis zurückgegeben. Bei
=SVERWEIS(A1;$Y$2:$Z$17;2;FALSCH)
passiert beides nicht. Kommt der Ausgangswert nicht vor, gibt es einen Fehler. Die Spalte muss nicht sortiert sein, Dafür benötige der Befehl aber erheblich mehr Rechenzeit.
Bei neuem Excel gibt es auch
=XVERWEIS(A1;$Y$2:$Y$17;$Z$2:$Z$17;"kein Wert;0;2)
das ist schnell (wenn sortiert), liefert auf Wunsch genaue Ergebnisse und nicht unbedingt einen Fehler, sondern eine beliebige Reaktion darauf (hier "kein Wert"). Außerdem braucht die Suchspalte nicht unbedingt links von der Ergebnisspalte und auf gleicher Höhe stehen.
In deinem Fall (Ausgangswerte 1:16) dürfte die INDEX-Variante das Einfachste sein.
Gruß,
Helmut
Win10 - Office365 / MacOS - Office365
Folgende(r) 1 Nutzer sagt Danke an HKindler für diesen Beitrag:1 Nutzer sagt Danke an HKindler für diesen Beitrag 28
• ygoe
Registriert seit: 28.02.2021
Version(en): 2016
Danke, die
WAHL-Funktion ist noch besser als die lange Multiplikation. Und sie scheint auch sehr vielseitig einsetzbar zu sein. Praktisch genau das if-then-else-else-..., das ich gesucht habe!
Registriert seit: 21.12.2017
Version(en): MS 365 Family (6 User x 5 Geräte für jeden) Insider-Beta
26.09.2022, 08:55
(Dieser Beitrag wurde zuletzt bearbeitet: 26.09.2022, 08:57 von LCohen.)
REST iVm INDEX ist WAHL noch überlegen (und kürzer), wenn die Maximalzahl Argumente überschritten wird.
Registriert seit: 28.02.2021
Version(en): 2016
Ja, klar, für große Datenmengen ist ein separater Ort für die Daten sicherlich besser geeignet. Ich wollte mir diese separate Ablage sparen und einfach alles in einer Formel haben. Für solchen Kleinkram …