Registriert seit: 24.08.2021
Version(en): 2019
Hallo zusammen,
ich habe einen Textstring (Beispiel) in folgender Form: 1230F3 (maximal 6 Zeichen). Von diesem String möchte ich nun in einer Formel (falls möglich) die letzten drei Zeichen addieren: Dabei sollen Nullen und Text jeweils durch die Ziffer 10 ersetzt werden, alle anderen Ziffern behalten ihren Wert. Somit würde sich aus den Beispielstring ein Wert von 23 ergeben. Kann jemand helfen, hier eine Lösung zu basteln.
Danke schon mal im voraus.
Thomas
Registriert seit: 12.10.2014
Version(en): 365 Insider (64 Bit)
22.10.2021, 13:56
(Dieser Beitrag wurde zuletzt bearbeitet: 22.10.2021, 14:06 von RPP63.)
Moin!
Dein Excel ist "zu alt", daher entweder Excel Online nutzen oder auf 2021 oder 365 umsteigen.
Egal, in meinem Excel geht
| A | B |
1 | 1230F3 | 23 |
2 | 23A56 | 21 |
3 | 12XY0 | 30 |
4 | A17L620 | 18 |
Zelle | Formel |
B1 | =LET(d;TEIL(A1;SEQUENZ(3;;LÄNGE(A1)-2);1); x;WENNFEHLER(--d;d); SUMME(WENN(ISTZAHL(x);WENN(x=0;10;x);10))) |
Man kann natürlich mit VBA eine UDF entwickeln, es ist sogar denkbar, dass man meine LET() als Formelmonster umschreiben kann …
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 16.08.2017
Version(en): 2007 / 2010 / Web
22.10.2021, 14:26
(Dieser Beitrag wurde zuletzt bearbeitet: 22.10.2021, 14:40 von Elex.)
Hi
Bei letzten drei ist es nur ein mini Monster.
=WENNFEHLER(1/(1/--TEIL(A4;LÄNGE(A4)-2;1));10)+WENNFEHLER(1/(1/--TEIL(A4;LÄNGE(A4)-1;1));10)+WENNFEHLER(1/(1/--RECHTS(A4;1));10)
Für Strings der Länge 3-6 sollte es auch noch so klappen
=SUMMENPRODUKT(WENNFEHLER(1/(1/--TEIL(LINKS(A1;6-LÄNGE(A1))&A1;{4;5;6};1));10))
Gruß Elex
Registriert seit: 12.10.2014
Version(en): 365 Insider (64 Bit)
22.10.2021, 14:29
(Dieser Beitrag wurde zuletzt bearbeitet: 22.10.2021, 14:44 von RPP63.)
Chapeau!
Vor allem, weil Du durch den doppelten Kehrwert sowohl #WERT! als auch #DIV/0! abfrühstückst!
Umgesetzt auf meinen Ansatz mit SEQUENZ()
=SUMME(WENNFEHLER(1/(1/TEIL(A1;SEQUENZ(3;;LÄNGE(A1)-2);1));10)) | A | B | C |
1 | 1230F3 | 23 | 23 |
2 | 23A50 | 25 | 25 |
3 | 12XY0 | 30 | 30 |
4 | A17L620 | 18 | 18 |
Zelle | Formel |
B1 | =SUMME(WENNFEHLER(1/(1/TEIL(A1;SEQUENZ(3;;LÄNGE(A1)-2);1));10)) |
C1 | =WENNFEHLER(1/(1/--TEIL(A1;LÄNGE(A1)-2;1));10)+WENNFEHLER(1/(1/--TEIL(A1;LÄNGE(A1)-1;1));10)+WENNFEHLER(1/(1/--RECHTS(A1;1));10) |
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 24.08.2021
Version(en): 2019
22.10.2021, 17:23
(Dieser Beitrag wurde zuletzt bearbeitet: 22.10.2021, 17:30 von Klixxer52.)
Hi Elex,
die Summenproduktformel funktioniert perfekt.
Vielen Dank für die Hilfe.
Gruß
Thomas
Hi Ralf,
du hast recht, ich sollte mir tatsächlich ein neueres Excel beschaffen. Teile Deiner Formeln kann ich in meinem Excel 2019 nicht nutzen. Die Formel in "C1" wäre nutzbar, aber der Summenprodukt-Vorschlag von Elex ist etwas kompakter.
Trotzdem vielen Dank für Deine spontane Unterstützung.
Gruß
Thomas