Anzeige
Archiv - Navigation
1112to1116
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 Klammern dividieren Teil 2

Zahlen in Klammern dividieren Teil 2
palme
Ich hatte gestern schon einmal mein Problem geschildert. Es ging darum, mit Zahlen die in Klammern stehen zu rechnen.
Die Tabelle besteht aus zwei Spalten, wobei die Zahlen der einen Spalte jeweils mit den Zahlen der anderen Spalte zeilenweise dividiert werden sollen in etwa so: ((a/b)-1)*100. Das ist ja bis dahin kein Problem.
Das Problem ist aber, dass Teilweise die Zahlen in Klammern stehen und folgendermaßen formatiert sind: # ##0 und diese Zahlen eigentlich keine Zahlen sind sondern Text.
Man muss also die Werte in Zahlen umwandeln, damit man mit ihnen rechnen kann. Das Ergebnis soll dann so aussehen, dass das Ergebnis auch in Klammern stehen sollte sobald eine der Ausgangszahlen in einer Klammer steht. Sollte eine der Ausgangszahlen fehlen soll ein "/" ausgegeben werden statt"WERT".
Dazu habe ich bisher drei Lösungsansätze.
1.
=WENN(ODER(LINKS(D64;1)="(";LINKS(C64;1)="(");"("&(RUNDEN((((WECHSELN(D64;" ";)/WECHSELN(C64;" ";)) -1)*100);1))&")";TEXT((RUNDEN((((WECHSELN(D64;" ";)/WECHSELN(C64;" ";))-1)*100);1)); "@"))
Bei dieser Formel wird "Wert" ausgegeben, wenn ein Ausgangswert fehlt. Ansonsten passt alles.
2.
=WENN(UND(C14"";ISTZAHL(--WECHSELN(WECHSELN(WECHSELN(C14;"(";"");")";"");" ";""))); TEXT(RUNDEN(--WECHSELN(WECHSELN(WECHSELN(D14;"(";"");")";"");" ";"") /--WECHSELN(WECHSELN(WECHSELN(C14;"(";"");")";"");" ";"");2);WENN(ODER(ISTZAHL(FINDEN("(";C14)); ISTZAHL(FINDEN("(";D14)));"(0,0); (- 0,0)";"0,0;-0,0"));"/")
Hier wird a/b statt ((a/b)-1)*100 gerechnet. Ansonnsten stimmt der Rest
3.
=TEXT(WENN(ISTFEHLER(RUNDEN(((WECHSELN(D64;" ";"")/WECHSELN(C64;" ";""))-1)*100;1));"/ "; RUNDEN(((WECHSELN(D64;" ";"")/WECHSELN(C64;" ";""))-1)*100;1));"0,0; - 0,0")
Und hier fehlt die Klammer ansonsten passt alles.
Ich hab schon Stunden daran rumgebastelt und sehe nur noch Klammern.

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Schick doch bitte mal ein paar Beispieldaten! oT
04.11.2009 11:45:36
Matthias5
AW: Schick doch bitte mal ein paar Beispieldaten! oT
04.11.2009 11:50:25
palme
Die zweite Zahl ist "a" und die erste "b"
Rechenschema ((a/b)-1)*100
4 771 -----4 833
2 946 -----2 974
2 060 -----2 086
(1 881) --(1 912)
1 432 -----1 443
2 389 -----2 414
/ ----------(1 930)
Bitte hochladen!
04.11.2009 11:55:27
Matthias5
Hi,
lade bitte die Beispieldaten als Datei hoch. Es geht mir darum, dass Format so zu übernehmen, wie es bei dir vorliegt.
Gruß,
Matthias
AW: Bitte hochladen!
04.11.2009 12:19:27
Matthias5
Hallo,
ich würde zwar vermutlich einen anderen Ansatz wählen (Anpassung der Rohdaten über suchen und ersetzen z.B.), aber hier die Formellösung:
Tabelle1
 ABCDEF
1ba  Das soll dastehen   
24 7714 833  1,31,3 
32 9462 974  1,01,0 
42 0602 086  1,31,3 
5(1 881)(1 912)  (1,6)(1,6) 
61 4321 443  0,80,8 
72 3892 414  1,01,0 
8/(1 930)  // 

verwendete Formeln
Zelle Formel
E2 =WENN(ZÄHLENWENN(A2:B2;"/")>0;"/";TEXT((WECHSELN(WECHSELN(WECHSELN(B2;"(";);")";);" ";)*1/WECHSELN(WECHSELN(WECHSELN(A2;"(";);")";);" ";)*1-1)*100;WENN(LINKS(A2;1)="(";"(0,0)";"0,0")))

Tabellendarstellung in Foren Version 4.8

Gruß,
Matthias
Anzeige
Hurra
04.11.2009 12:30:39
palme
Klasse!!! Deins funktioniert auch. Hab Version 2. nochmal umgebaut und die funktioniert auch. Deine ist aber kürzer.
=WENN(UND(C11"";ISTZAHL(--WECHSELN(WECHSELN(WECHSELN(C11;"(";"");")";"");" ";""))); TEXT(((RUNDEN(--WECHSELN(WECHSELN(WECHSELN(D11;"(";"");")";"");" ";"") /--WECHSELN(WECHSELN(WECHSELN(C11;"(";"");")";"");" ";"");3)-1)*100);WENN(ODER(ISTZAHL(FINDEN("("; C11)); ISTZAHL(FINDEN("(";D11)));"(0,0); (- 0,0)";"0,0;-0,0"));"/")
Freut mich!
04.11.2009 12:47:28
Matthias5
Hi,
danke für die Rückmeldung, freut mich, dass es funktioniert.
Noch ein Hinweis: Meiner Meinung nach kannst du dir die Formatunterscheidung "(0,0); (- 0,0)" sparen, da die Klammern üblicherweise schon ausdrücken, dass es sich um negative Werte handelt.
Gruß,
Matthias
Anzeige
Kleine Korrektur!
04.11.2009 12:26:56
Matthias5
Hallo nochmal,
ich habe vergessen, das Format der 2. Spalte abzufragen. Hier die Korrektur:
Tabelle1
 ABCDE
1ba  Das soll dastehen 
24 7714 833  1,31,3
32 9462 974  1,01,0
42 0602 086  1,31,3
51 881)(1 912)  (1,6)(1,6)
61 4321 443  0,80,8
72 3892 414  1,01,0
8/(1 930)  //

verwendete Formeln
Zelle Formel
E2 =WENN(ZÄHLENWENN(A2:B2;"/")>0;"/";TEXT((WECHSELN(WECHSELN(WECHSELN(B2;"(";);")";);" ";)*1/WECHSELN(WECHSELN(WECHSELN(A2;"(";);")";);" ";)*1-1)*100;WENN(ODER(LINKS(A2;1)="(";LINKS(B2;1)="(");"(0,0)";"0,0")))

Tabellendarstellung in Foren Version 4.8

Gruß,
Matthias
Anzeige
AW: Zahlen in Klammern dividieren Teil 2
04.11.2009 11:49:04
Specke
Hallo,
versuch mal bei Beispiel 1:
=Wenn(Istfehler(DEINE_FORMEL);"/";DEINE_FORMEL)
Gruß Specke

309 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige