Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1492to1496
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

SUMME VON ZAHLEN DIE IN KLAMMERN STEHEN

SUMME VON ZAHLEN DIE IN KLAMMERN STEHEN
08.05.2016 12:46:30
Zdravko
[code]
10585 (3), 10587 (15), 10589 (58)
[/code]
Ich möchte nun alle Zahlen zusammen addieren die in Klammern stehen in einer Zelle
Wie geh ich da vor?
Mfg

26
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: SUMME VON ZAHLEN DIE IN KLAMMERN STEHEN
08.05.2016 12:54:27
Hajo_Zi

Tabelle2
 AB
910585 (3)76
10 10587 (15) 
1110589 (58) 

verwendete Formeln
Zelle Formel Bereich N/A
B9{=SUMME(WECHSELN(TEIL(A9:A11;SUCHEN("(";A9:A11)+1;LÄNGE(A9:A11));")";"")*1)}$B$9 
{} Matrixformel mit Strg+Umschalt+Enter abschließen
Matrixformeln sind durch geschweifte Klammern {} eingeschlossen
Diese Klammern nicht eingeben!!

Excel-Inn.de
Hajo-Excel.de
XHTML-Tabelle zur Darstellung in Foren, einschl. der neuen Funktionen ab Version 2007
Add-In-Version 23.01 einschl. 64 Bit



Anzeige
AW: SUMME VON ZAHLEN DIE IN KLAMMERN STEHEN
08.05.2016 13:46:09
Zdravi
hy,
bei mir funct das irgend wie nicht, wenn ich die tabelle so aufbaue wie du und in B9 die Formel kopiere bekomme ich die Zahl 3 und nicht 76 wie du.
ausserdem in meiner richtigen Tabelle sind die daten A9,A10,A11 alle in einer Zelle
Zelle A2:13629 (5), 13627 (66), 13405 (1)
Formel in B2:

AW: SUMME VON ZAHLEN DIE IN KLAMMERN STEHEN
08.05.2016 13:49:53
Hajo_Zi
Du hast meinen Beitrag schon komplett gelesen?
Ich habe nun schon die Zeit investiert um Deine Datei nachzubauen. Das ist nun schon genung Zeit von meiner Seite.
Gruß Hajo

Anzeige
AW: SUMME VON ZAHLEN DIE IN KLAMMERN STEHEN
08.05.2016 13:55:09
Zdravi
hy Hajo,
ich habe deine Nachricht komplett gelesen aber anscheind du meine Frage NICHT ;-)
den meine Frage war, alle werte sind in EINER ZELLE und nicht verteilt auf drei wie in deinem
nachbau.
danke dir trotzdem für deine Kostbare Zeit.

AW: SUMME VON ZAHLEN DIE IN KLAMMERN STEHEN
08.05.2016 13:58:28
Hajo_Zi
meine Antwort bezog sich auf diesen Teil
bei mir funct das irgend wie nicht, wenn ich die tabelle so aufbaue wie du und in B9 die Formel  _
kopiere bekomme ich die Zahl 3 und nicht 76 wie du.

Wer alles liest ist klar im Vorteil. Man muss sich nicht nur eibilden das man alles gelesen hat.
Gruß Hajo

Anzeige
AW: SUMME VON ZAHLEN DIE IN KLAMMERN STEHEN
08.05.2016 14:00:42
Zdravi
Ok

missverständliche Frage
08.05.2016 16:51:49
MB12
Hallo Zdravi,
hatte deine Frage auch falsch verstanden. Eine kleine Beispieldatei wäre sinnvoll gewesen.
Ohne Profihilfe: Ich würde die Ausdrücke aufsplitten, das geht mir am schnellsten von der Hand. Du kannst das ganze auch mit dem Recorder aufzeichnen.
Hilfedatei anbei:
https://www.herber.de/bbs/user/105451.xlsx
Gruß, Margarete

AW: missverständliche Frage
08.05.2016 18:36:21
Zdravi
Hy Margarete,
danke erst mal für dein anstoß habe es per Makro geschafft die Werte zu splitten, danach letzten Zeichen also ) zu ersetzen und ann werte zu Addieren.
das schaut bei mir etwas zu komplitziert es geht bestimmt auch einfacher ;-)
https://www.herber.de/bbs/user/105453.xlsx

Anzeige
AW: missverständliche Frage
08.05.2016 19:48:59
MB12
Hallo Zdravi,
na klar geht das einfacher.
Mein Gedanke war: wenn du das Makro (incl. Einfügen von leeren Spalten usw.) aufzeichnest, könntest du dieses jeweils mit F5 ablaufen lassen oder dir einen Button anlegen, dem du das Makro zuweist. Aber du weißt ja sicher, dass du die Datei dann als .xlsm speichern musst - sonst nix Makro, und ich kann es auch nicht testen bzw. mal reinschauen.
Aber ich stelle das Thema mal auf offen.
Mach's gut
Gruß, Margarete

@MB12
08.05.2016 21:52:51
Michael
Hi Margarete,
da Du ja immer daran interessiert bist, Deinen Gesichtskreis zu erweitern, nenne ich Dir hier mal einen netten Link zur "Simulation" von VBAs split(), mit dem man einen String in ein Array zerlegt:
http://stackoverflow.com/questions/25316094/split-a-string-cell-in-excel-without-vba-e-g-for-array-formula
Im Prinzip müßte man nur - siehe Datei: https://www.herber.de/bbs/user/105458.xlsx
Ist nicht ohne, aber (wahrscheinlich) machbar.
Viel Spaß beim Knobeln & schöne Grüße,
Michael

Anzeige
Habe mal deine Idee aufgegriffen, ...
09.05.2016 01:20:46
Luc:-?
…Michael,
aber eine derartige Fml wäre bei Einsatz nur einer qualifizierten UDF (3×!) mit 124 Zeichen schon deutlich länger und komplizierter als meine anderen UDF-Fmln:
=SUMMENPRODUKT(SplitVx(A35;{" ("."), ".")"})*SplitVx(GLÄTTEN(WIEDERHOLEN(" 0 1";ANZAHL2(SplitVx(A35; {" ("."), ".")"}))/2))))
Da scheint mir dann doch eher eine Umwandlung in einen AUSWERTbarEN FmlText sinnvoller zu sein, auch wenn das insgesamt dann 3 Fmln sind, von denen 2 aber nur 1× als Namen definiert wdn müssen:
=SUMMENPRODUKT(TextVx;TextVxMult)
TextVx =AUSWERTEN("{"&WECHSELN(WECHSELN(WECHSELN($A35;" (";".");"), ";".");")";"}"))
TextVxMult =AUSWERTEN("{"&LINKS(WIEDERHOLEN("0.1.";ANZAHL(TextVx)/2);ANZAHL(TextVx)*2-1)&"}")
Morrn, Luc :-?

Anzeige
vielen Dank, Luc:-?,
09.05.2016 19:57:10
Michael
das war sehr erhellend!
Vor allem das Auswerten einer Matrix in Stringform in eine "echte" Matrix reißt's raus!
Kürzer geht's net.
Schöne Grüße,
Michael

Ja, das mache ich öfter, aber normalerweise ...
10.05.2016 01:21:19
Luc:-?
…mit einer UDF auf Basis der vbFkt Evaluate, die aber US-Original-Notationsform benötigt, Michael.
Ich hatte auch mal eine UDF geschrieben, die aus ZellBereichen oder Datenfeldern (aus FmlErgebnissen) eine MxKonstante in TextForm erzeugt (in der StandardForm aber nur als Vektor).
Gruß, Luc :-?

AW: Ja, das mache ich öfter, aber normalerweise ...
11.05.2016 17:04:54
Michael
Hi,
US ist klar in VBA...
Ich lerne oder erarbeite mir halt immer das, was ich gerade brauche (sofern erforderlich) - aber es ist immer anregend, so Sachen vorgeführt zu bekommen: zur Erweiterung des "Werkzeugkastens".
Schöne Grüße,
Michael

Anzeige
Ja, im Prinzip, ...
11.05.2016 20:45:48
Luc:-?
…Michael,
aber das heißt nicht unbedingt, dass ein FmlText einer UDF auch in US-N. übergeben wdn muss. Die Alternative wäre aber die Übergabe einer echten Fml, deren US-Text dann die UDF selbst aus ihrer eigenen Notation ermitteln muss.
Gruß & FroPf, Luc :-?

@MB12 - Nachtrag
09.05.2016 08:50:31
Michael
Hi Margarete,
jetzt habe ich doch ein schlechtes Gewissen, daß ich Dich DAMIT konfrontiert habe.
Die Geschichte hat mich selber gejuckt, aber vor der Arbeit hat mir die Zeit nicht mehr gereicht, um mich zu vertiefen.
Laß Dich nicht ärgern und hab einen schönen Tag, gell,
schöne Grüße,
Michael
P.S.: Ein Gutes hatte es ja, nämlich die Antwort von Luc.

Anzeige
AW: @MB12 - Nachtrag
09.05.2016 18:07:47
MB12
Hi Michael,
ganz im Gegenteil; die Sache mit dem split a string ist wirklich einfach und einleuchtend erklärt.
Ich habe festgestellt, dass oft in englischsprachigen Seiten die Erklärungen viel simpler sind als in den deutschen (auch wenn ich ab und an Fachausdrücke nachschaun muss, aber meist sind sie selbsterklärend).
Und ärgern lasse ich mich nicht wirklich; denn was erreiche ich damit? Mit Ärger ändern man nichts und schadet nur sich selbst.
Hauptsache dem Frager wurde nach dem holprigen Beginn geholfen - das war mein Ziel. So langsam lerne ich, wie man Reaktionen bekommt, gell?
Grüßle
Margarete

Anzeige
ah, schön, dann...
09.05.2016 19:53:41
Michael
Hi Margarete,
mit den englischen Erklärungen muß ich Dir Recht geben: "früher" war das Deutsche auch verständlicher - heutzutage meinen viele Autoren, es möglichst allgemein und abstrakt halten zu müssen - so abstrakt, daß ich mir manchmal schwer tue, mir eine "Vorstellung" eines beschriebenen Sachverhalts zu machen.
Wenn Dir das split a string getaugt hat, lade ich die Datei doch mal hoch:
https://www.herber.de/bbs/user/105469.xlsm
Ich habe die Formel erst mal mittels einer Mini-Sub übersetzt, dann im String aus 2a)(weil's in der Formal schon so drinstand) die | durch # ersetzt und in A1 gesteckt, und siehe da: es kommt in A22 38000nochwas raus.
Daraus braucht man dann noch jedes Zweite. Dazu habe ich zunächst in A12 die Anzahl der "Zahlenteile" ermittelt und in B14 genauso viele 0 und 1 erzeugt; in B14 sieht man nur eine 0, derweil das eine Matrixformel ist: wenn Du die Formel in der Bearbeitungsleiste komplett markierst und F9 drückst, siehst Du die erzeugten Werte: {0;1;0;1;0;1} (bitte mit ESC wieder raus, sonst bleiben die Werte stehen und die Formel ist futsch).
In A14 ist dann alles zusammen mit der split a string verwurschtelt - und wir haben die 76.
Lucs Formeln habe ich in ein weiteres Blatt eingebaut - die sind natürlich viel eleganter, vor allem gefällt mir die Geschichte, wie mit AUSWERTEN (das leider nur in benannten "Namen" läuft) aus einem String, der aussieht wie eine Matrix, eine Matrix wird.
Abgesehen davon: um das Bereich.Verschieben hatte ich bislang irgendwie einen Bogen gemacht; gerade hier hat mir auch die engl. Bezeichnung OFFSET die Augen geöffnet: ist ja echt das Gleiche wie range.offset & resize in Einem.
Kurzum: wieder dicke was gelernt!
Frohes Schaffen & schöne Grüße,
Michael

AW: ah, schön, dann...
12.05.2016 12:06:59
MB12
Hi Michael,
nach den ersten zehn Minuten ist mir der Text vor Augen verschwommen; mal sehn, ob WOCHENENDE=FORMEL(MICHAEL)
Danke inzwischen
Gruß, Margarete

AW: ah, schön, dann...
12.05.2016 19:54:23
Michael
Hi Margarete,
wie es Dir reinpaßt...
"Meine" Formel ist ja viel umständlicher als Lucs, aber ich habe es deshalb so ausführlich erklärt, damit's bei mir selber besser hängenbleibt: bei diesen Matrix-Dingern hat's mir "ewig" das Hirn verbogen, aber so laaaangsam mit immer wieder Rumprobieren kapiere ich's.
So oder so viel Spaß,
Michael

genau so ...
13.05.2016 18:58:35
MB12
...funktioniert es bei mir auch.
Die Datei prangt übrigens mitten auf meinem Desktop - unübersehbar
Lass dich vom Wetter nicht ärgern und genieße das lange Wochenende.
Gruß
Margarete

Das ist mit UDFs aus dem Archiv kein Problem, ...
08.05.2016 22:06:41
Luc:-?
…Zdravko:
 ABCDEFG
3510584 (3), 10587 (15), 10589 (58)7676
3610585 (3), 10587 (15), 10589 (58), 10155 (33), 12055 (1), 13056 (22), 13055 (2), 13051 (1)135135
3710585 (8), 14059 (68), 10587 (1)7777
3814050 (30), 14059 (35)6565
39⇒SUMME(VSplit(MaskOn(MaskOn(A35;"mrk()");"num");;1))
40⇒TxEval(WECHSELN(MaskOn(A35;"mrk()");" ";"+"))

Feedback nicht unerwünscht! Gruß, Luc :-?
Besser informiert mit …

AW: Das ist mit UDFs aus dem Archiv kein Problem, ...
08.05.2016 23:57:26
Zdravi
hy, mit eigenen Functionen hatte ich noch nicht das vergnügen ;-(
habe das hier gefunden und es macht fast genau das was ich suche
Public Function sum(rngBereich As Range) As Long
Dim Zelle As Range
Dim SPL
Dim lngX As Long
For Each Zelle In rngBereich
SPL = Split(Zelle, "(")
For lngX = 0 To UBound(SPL)
sum = sum + Val(SPL(lngX))
Next
Next
End Function
aber wie gesagt nur fast...
ich bekomme als Ergebnis die Zahlen in den Klammern + die ersten 5 Zahlen wie kann ich ab der ersten ( rechnen.
Luc bei deinen formeln bekomme ich immer Fehler beim A35;

AW: Das ist mit UDFs aus dem Archiv kein Problem, ...
09.05.2016 00:00:45
Zdravi
Danke an alle die mitgewirkt haben, die Lösung steht unten:
Public Function sum(rngBereich As Range) As Long
Dim Zelle As Range
Dim SPL
Dim lngX As Long
For Each Zelle In rngBereich
SPL = Split(Zelle, "(")
For lngX = 1 To UBound(SPL)
sum = sum + Val(SPL(lngX))
Next
Next
End Function

AW: Das ist mit UDFs aus dem Archiv kein Problem, ...
09.05.2016 01:09:03
Werner
Hallo,
einen gelösten Beitrag solltest du nicht wieder auf offen stellen.
Gruß Werner

Suche per RECHERCHE die verwendeten UDFs ...
09.05.2016 01:37:08
Luc:-?
VSplit, MaskOn und TxEval im Archiv und vgl die mit deiner, Zdravi,
dann wirst du sicher merken, dass du die, anders als deine, für alle möglichen, ähnlich gelagerten Aufgaben in einer ZellFml einsetzen kannst.
Alternativ geht's ohne VBA, aber mit XLM-Fkt in benannter Fml auch wie von mir Michael gezeigt.
Morrn, Luc :-?

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige