Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1860to1864
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zahlen in Zelle mit Text finden u. addi

Zahlen in Zelle mit Text finden u. addi
07.12.2021 09:36:13
Mike
Hallo zusammen,
das hier ist mein erster Beitrag und ich hoffe, dass dieses Problem nicht bereits in anderen Beiträgen diskutiert wurde. Leider habe ich nur ähnliche Lösungen zu ähnlichen Aufgabenstellungen gefunden, die mir bei der Lösung nicht zu 100 % geholfen haben.
Das Problem ist nämlich folgendes:
In Zelle A1 steht = Lisa (12), Simon (39)
In Zelle B1 steht = Peter (15), Thomas (20), Heinrich (19)
Nun soll eine Funktion gebildet werden, welche diese Zahlen findet, addiert und in Zelle C1 schreibt, d. h.:
In Zelle C1 sollen stehen = 105
Hätte jemand zufällig eine Lösung für dieses Problem (wenn möglich ohne VBA)? Dabei soll es variabel sein, wie viele Zellen addiert werden sollen. Ein etwas ausführlicheres Beispiel habe ich als Beispielarbeitsmappe beigefügt.
Vielen Dank bereits im Voraus!
Gruß
Mike

24
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zahlen in Zelle mit Text finden u. addi
07.12.2021 09:39:32
Klaus
Ein etwas ausführlicheres Beispiel habe ich als Beispielarbeitsmappe beigefügt.
Hast du nicht :-P
nachgefragt
07.12.2021 10:41:23
Klaus
Mike,
Sind die Stunden immer zweistellig und in Klammern stehend? Oder könnte auch ein Code vorkommen wie
Hans (100)
Greta (7)
Bärbel [3000]
LG,
Klaus M.
AW: nachgefragt
07.12.2021 10:56:05
Mike
Hallo Klaus,
die Stunden sind ein- oder zweistellig (theoretisch könnte ich die Daten auch einfach aufbereiten, sodass ich bei einstelligen Zahlen eine "0" davon setze, d. h. bspw. "09" falls das hilft). Die Zahlen stehen immer in normalen Klammern, d. h. dass die Form immer genau gleich wie in den Beispieldaten ist.
Vielen Dank!
Gruß
Mike
Anzeige
AW: nachgefragt
07.12.2021 11:03:25
SF
Hola,
sind Hilfszellen möglich?
Ansonsten fällt mir bei dem Aufbau keine Formellösung ein.
Gruß,
steve1da
AW: nachgefragt
07.12.2021 11:14:37
Mike
Hallo Steve1da,
Hilfszellen wären auf jeden Fall auch möglich.
@Klaus: Eine Lösung mittels VBA wäre als Notlösung natürlich auch in Ordnung.
Vielen Dank euch!
Gruß
Mike
Anzeige
AW: nachgefragt
07.12.2021 11:17:58
SF
Dann in B5:

=WENNFEHLER(LINKS(GLÄTTEN(TEIL(WECHSELN(B$4;"(";WIEDERHOLEN(" ";999));ZEILE(X2)*999-998;999));FINDEN(")";GLÄTTEN(TEIL(WECHSELN(B$4;"(";WIEDERHOLEN(" ";999));ZEILE(X2)*999-998;999)))-1)*1;"")
Diese Formel so weit wie gewünscht nach unten und nach rechts bis Spalte F ziehen. Dann die Summe aus diesen Zahlen bilden.
...klappt nur für 2-stellige Zahlen!! owT
07.12.2021 12:56:23
Rolf
AW: falscher Zweig!
07.12.2021 13:19:27
Rolf
upps,
das sollte natürlich zu meiner Antwort unten!
Gruß Rolf
Mit VBA-basierter UDF f.dein Bsp ganz einfach, ...
07.12.2021 11:50:08
Luc:-?
…Mike:
{=SUMME(WENNFEHLER(--SplitVx(B4:F4; {"(".")"});""))} ⇒ Ergebnis 169
UDF-Name maussensitiv; zugehörige BspDatei: https://www.herber.de/bbs/user/84157.xls (Diese Vs1.6 -ohne Arg4- enthält wie unpubl Vs2.0 noch 1 kleinen Fehler!)
Gruß, Luc :-?
„Die universelle Befähigung zur Unfähigkeit macht jede menschliche Leistung zu einem unglaublichen Wunder.“ Stapps ironisches Paradoxon
Anzeige
In Anlehnung an Rolf ginge auch das, ...
07.12.2021 14:39:44
Luc:-?
…Mike,
allerdings ebenfalls mit UDFs, wobei VJoin das in deiner XlVersion fehlende TEXTVERKETTEN ersetzt:
=SUMMENPRODUKT(TxEval("{"&WECHSELN(MaskOn(VJoin(B4:F4; ",");"num");" ";",")&"}"))
MaskOn filtert die reinen Zahlenwerte aus dem mit VJoin erzeugten GesamtText aus. Daraus wird dann eine MatrixKonstante (hier in US-Original­Notation erforderlich) in TextForm gemacht, die mit TxEval ausgewertet wird.
Auf letztere UDF könnte verzichtet wdn, wenn für diesen FmlTeil ein definierter Name angelegt wird und in dessen Bezug stattdessen die alte XLM-Fkt AUSWERTEN benutzt wird (dann ist die TextMatrixKonstante in lokaler Notation -dt- erforderlich):
=SUMMENPRODUKT(NurZahlen)
für defName NurZahlen: =AUSWERTEN("{"&WECHSELN(MaskOn(VJoin(C5:G5;",");"num");" ";".")&"}")
Anmerkungen: Bei der vorherigen (singularen) SplitVx-MatrixFml ist Iterationseinstellung erforderlich (sonst ZirkelBezugsmeldung), bei den beiden hier genannten NormalFmln nicht. Bei Verwendung von XLM-Fktt (nur zu defNamen möglich!) ist definitiv eine DateiSpeicherung als .xlsm/.xlsb erforderlich, bei UDFs nur, wenn ihre Pgmm in der Mappe enthalten sind. Wenn sie aber zentral gesammelt wdn (Personal.xlsm/b oder AddIn .xlam) ist das nicht erforderlich. Dann müssen diese anderen Nutzern ggf ebenso zV stehen oder die Daten sollten nicht mit Fmln weiter gegeben wdn (an Extern ohnehin empfohlen).
Luc :-?
Anzeige
AW: Zahlen in Zelle mit Text finden u. addi
07.12.2021 12:39:15
Rolf
Hallo Mike,
für Dein Beispiel, probier mal:
=SUMME(WENNFEHLER(AGGREGAT(14;6;--TEIL(B4&C4&D4&E4&F4;ZEILE($A$1:$A$999);2);SPALTE(A1:Z1));0))
und als Array-Formel bestätigen (Strg+Shift+Enter)
Da Excel 2016 noch kein TEXTVERKETTEN kennt, hab ich die Texte mit & 'aufaddiert'.
Gruß Rolf
AW: Zahlen in Zelle mit Text finden u. addi
07.12.2021 13:54:37
Mike
Vielen Dank an alle! Besonders aber an Rolf, das ist genau das was ich gesucht habe!
Liebe Grüße
Mike
AW: doch Achtung! ...
07.12.2021 14:47:02
neopa
Hallo Mike,
... wie auch Rolf bereits geschrieben hatte, die Formel funktioniert so nur für zweistellige Zahlen und unter ganz bestimmten Bedingungen.
Sobald nur eine Zahl einstellig ist, oder wenn eine öffnende Klammer fehlt oder eine Leerzeichen nach einer öffnenden Klammer steht oder ... wird das Ergebnis falsch!
So gern ich selbst AGGREGAT()-Formeln aufstelle, hier würde ich mich momentan damit schwer tun.
Gruß Werner
.. , - ...
Anzeige
AW: doch Achtung! ...
07.12.2021 19:13:59
Rolf
Hallo Werner,
das mit der Zweistelligkeit ist klar, deshalb auch bei Einstelligkeit eine Null voranstellen.
Dass bei einer fehlenden Klammer, oder einem zusätzl. Leerzeichen, die Formel nicht mehr funktioniert, kann ich nicht nachvollziehen.
Der Formel ist egal, ob Klammer, Text, oder Leerzeichen, sie sucht nur nach 2.stelligen Zahlen!
Gruß Rolf
AW: das ist leicht nachweisbar ...
07.12.2021 19:27:23
neopa
Hallo Rolf,
... denn sieh mal z.B. hier:
Arbeitsblatt mit dem Namen 'Tabelle1'
 BCD
3MontagDienstagSumme
4Lisa (10), Tim( 50), Lea 30)Michael (20)118

ZelleFormel
D4{=SUMME(WENNFEHLER(AGGREGAT(14;6;--TEIL(B4&C4;ZEILE($A$1:$A$99);2);SPALTE(A1:Z1));0))}
Achtung, Matrixformel enthalten!
Die geschweiften Klammern{} werden nicht eingegeben.
Verlassen Sie den Zelleneditor mit Strg+Shift + Enter, statt Enter alleine.
Verwendete Systemkomponenten: [Windows (32-bit) NT 6.02] MS Excel 2010
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg

Gruß Werner
.. , - ...
Anzeige
AW: doch Achtung! ...
07.12.2021 19:32:22
Rolf
hallo Werner,
Du hast Recht, in der großen Formel stimmt das Ergebnis nicht mehr!
ich hatte nur im kleinen probiert, und da schien alles ok, Sorry
Warum genau das aber so ist, kann ich momentan nicht ergründen. Das muss ich mir morgen nochmal anschauen.
Gruß Rolf
AW: der Grund dafür liegt auf der Hand ...
07.12.2021 19:40:45
neopa
Hallo Rolf,
... es müssen einfach nur die Leerzeichen gegen "" gewechselt werden, wie ich eben herausgefunden habe.
Gruß Werner
.. , - ...
AW: ergänzend f ...
07.12.2021 19:55:27
neopa
Hallo Mike,
... bezogen auf mein verkürztes Beispiel so. Falsches Ergebnis mit Formel F4 und richtiges mit E4:
Arbeitsblatt mit dem Namen 'Tabelle1'
 BCDEF
3MontagDienstag Summe 
4Lisa (10 ), Tim( 50, Lea (30)Michael 02) 9297

ZelleFormel
E4{=SUMME(WENNFEHLER(AGGREGAT(14;6;--TEIL(WECHSELN(B4&C4;" ";"");ZEILE($A$1:$A$999);2);SPALTE(A1:Z1));0))}
F4{=SUMME(WENNFEHLER(AGGREGAT(14;6;--TEIL(B4&C4;ZEILE($A$1:$A$999);2);SPALTE(A1:Z1));0))}
Achtung, Matrixformel enthalten!
Die geschweiften Klammern{} werden nicht eingegeben.
Verlassen Sie den Zelleneditor mit Strg+Shift + Enter, statt Enter alleine.
Verwendete Systemkomponenten: [Windows (32-bit) NT 6.02] MS Excel 2010
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg

Gruß Werner
.. , - ...
Anzeige
AW: stimmt
07.12.2021 19:58:05
Rolf
...ob eine Klammer dabei ist, oder nicht, ist egal, solange vor, oder nach der Zahl kein Leerzeichen, oder Komma, oder Punkt ist.
das sind für die --TEIL(....) Formel alles Zahlen.
Gruß Rolf
AW: ... so aber auch nicht ganz ...
07.12.2021 20:14:37
neopa
Hallo Rolf
... ein Punkt vor oder danach und ein Komma nach der (zweistelligen) Zahl spielt keine Rolle.
Gruß Werner
.. , - ...
AW: noch eine VBA- wie formelfreie Alternative ...
07.12.2021 15:16:09
neopa
Hallo Mike,
... wäre eine Lösung mit der Funktionalität, die unter dem Menüpunkt Daten und da unter Abrufen und transformieren findest. Dazu mehr findest Du unter dem Fachbegriff Power Query (PQ) im Internet.
Unter der Bedingung, dass die Zahlen immer durch Komma getrennt und in öffnenden und schließender Klammer "eingebettet" sind, was alle anderen bisher aufgeführten Lösungen auch voraussetzen, kann eine derartige Summe auch für beliebige Zahlengrößen berechnet werden. Dies sogar auch über mehr als eine Datenzeile hinaus.
Mit wenigen Mausklicks kann damit eine Summe gebildet werden, welche bei Datenänderung durch Mausklick oder eine Tastenkombination nur noch aktualisiert werden muss.
Die dazu notwendigen Schritte in/mit PQ nachfolgend in Kurzform:
- Daten einlesen
- Daten entpivotieren und danach trennen nach jeden Komma
- Datenspalten ohne die Wochentage entpivotieren und trennen nach "(" und nach ")"
- für die so erstellte Wertespalte die Summe berechnen lassen
- Die Summe in das Tabellenblatt übernehmen.
Gruß Werner
.. , - ...
Anzeige
AW: Zahlen in Zelle mit Text finden u. addi
07.12.2021 17:37:24
Herbert_Grom
Hallo Mike,
falls du noch eine flexible VBA-Lösung brauchen kannst, dann schau dir mal meinen Vorschlag an:
https://www.herber.de/bbs/user/149652.xlsm
Servus

316 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige