PDA

Vollständige Version anzeigen : Zellinhalte in Formel umwandeln


jan_0815
04.05.2009, 13:50
Ich habe folgendes Problem

in einer Zelle habe ich eine Formel in Textform, z.B. Zelle A1 beinhaltet "=2*2".

Nun möchte ich diese Formel in einer anderen Zelle berechnen lassen, also in diesem Beispiel soll in der Zelle A2 die Formel 2*2 berechnet werden und das Ergebnis anzeigen.

Wenn irgendwie möglich würde ich das Problem gerne ohne VBA, nur mit Excel-Formeln lösen.

Danke
Jan

Backowe
04.05.2009, 14:09
Hi Jan,

hier mal ein kleiner Denkanstoß, hoffe es hilft Dir weiter.

<table border="1" cellspacing="0" cellpadding="0" style="font-family:Arial,Arial; font-size:10pt; background-color:#ffffff; padding-left:2pt; padding-right:2pt; "> <colgroup><col style="font-weight:bold; width:30px; " /><col style="width:80px;" /><col style="width:80px;" /></colgroup><tr style="background-color:#cacaca; text-align:center; font-weight:bold; font-size:8pt; "><td >&nbsp;</td><td >A</td><td >B</td></tr><tr style="height:17px ;" ><td style="font-size:8pt; background-color:#cacaca; text-align:center; " >1</td><td >=2*2</td><td style="text-align:right; ">4</td></tr></table><br /><table style="font-family:Arial; font-size:10pt; border-style: groove ;border-color:#00ff00;background-color:#fffcf9; color:#000000; "><tr><td ><b>Formeln der Tabelle</b></td></tr><tr><td ><table border = "1" cellspacing="0" cellpadding="2" style="font-family:Arial; font-size:9pt;"><tr style="background-color:#cacaca; font-size:10pt;"><td >Zelle</td><td >Formel</td></tr><tr><td >B1</td><td >=FINDEN("*";WECHSELN<span style=' color:008000; '>(RECHTS<span style=' color:#0000ff; '>(A1;L&Auml;NGE<span style=' color:#ff0000; '>(A1)</span>-1)</span>;"=";"")</span>)*RECHTS(A1;L&Auml;NGE<span style=' color:008000; '>(A1)</span>-FINDEN<span style=' color:008000; '>("*";A1)</span>)</td></tr></table></td></tr></table> <br /><br /><span style="font-family:Arial; font-size:9pt; font-weight:bold;background-color:#ffffff; color:#000000; ">Excel Tabellen im Web darstellen &gt;&gt; </span><a style ="font-family:Arial; font-size:9pt; color:#fcf507; background-color:#800040; font-weight:bold;" href="http://www.excel-jeanie-html.de" target="_blank"> Excel Jeanie HTML 4 </a>

jan_0815
04.05.2009, 14:20
Hi Jürgen,

vielen Dank für die schnelle Antwort. Leider trifft die Lösung nur auf das relativ einfach gewählte Beispiel zu. In meinem Fall weiß ich vorher nicht welche Formel in der Zelle A1 steht. Also kann das neben "=2*2" auch "=3-2" oder sogar "=Wenn(X5<2;"Ja";"Nein")" oder Ähnliches sein.

Ich bräuchte also wirklich eine Funktion die Text in eine Formel "zurückverwandelt" und nicht versucht die Formel auszulesen und nachzurechnen. Ich weiß leider nicht mal ob es so eine Funktion überhaupt gibt.

Backowe
04.05.2009, 14:46
Hi Jan,

es gibt eine Lösung, so von hinten durch die Brust ins linke Auge. Die Formeln in Spalte B kopieren und als Werte wieder einfügen! :)

<table border="1" cellspacing="0" cellpadding="0" style="font-family:Arial,Arial; font-size:10pt; background-color:#ffffff; padding-left:2pt; padding-right:2pt; "> <colgroup><col style="font-weight:bold; width:30px; " /><col style="width:165px;" /><col style="width:204px;" /><col style="width:80px;" /></colgroup><tr style="background-color:#cacaca; text-align:center; font-weight:bold; font-size:8pt; "><td >&nbsp;</td><td >A</td><td >B</td><td >C</td></tr><tr style="height:17px ;" ><td style="font-size:8pt; background-color:#cacaca; text-align:center; " >1</td><td >"=2*2"</td><td >=2*2</td><td style="text-align:right; ">4</td></tr><tr style="height:17px ;" ><td style="font-size:8pt; background-color:#cacaca; text-align:center; " >2</td><td >"=3-2"</td><td >=3-2</td><td style="text-align:right; ">1</td></tr><tr style="height:17px ;" ><td style="font-size:8pt; background-color:#cacaca; text-align:center; " >3</td><td >"=Wenn(X5&lt;2;"Ja";"Nein")"</td><td >=Wenn(X5&lt;2;"Ja";"Nein")</td><td >Ja</td></tr></table><br /><table style="font-family:Arial; font-size:10pt; border-style: groove ;border-color:#00ff00;background-color:#fffcf9; color:#000000; "><tr><td ><b>Formeln der Tabelle</b></td></tr><tr><td ><table border = "1" cellspacing="0" cellpadding="2" style="font-family:Arial; font-size:9pt;"><tr style="background-color:#cacaca; font-size:10pt;"><td >Zelle</td><td >Formel</td></tr><tr><td >B1</td><td >=WECHSELN(LINKS<span style=' color:008000; '>(A1;L&Auml;NGE<span style=' color:#0000ff; '>(A1)</span>-1)</span>;ZEICHEN<span style=' color:008000; '>(34)</span>;"";1)</td></tr><tr><td >C1</td><td >=2*2</td></tr><tr><td >B2</td><td >=WECHSELN(LINKS<span style=' color:008000; '>(A2;L&Auml;NGE<span style=' color:#0000ff; '>(A2)</span>-1)</span>;ZEICHEN<span style=' color:008000; '>(34)</span>;"";1)</td></tr><tr><td >C2</td><td >=3-2</td></tr><tr><td >B3</td><td >=WECHSELN(LINKS<span style=' color:008000; '>(A3;L&Auml;NGE<span style=' color:#0000ff; '>(A3)</span>-1)</span>;ZEICHEN<span style=' color:008000; '>(34)</span>;"";1)</td></tr><tr><td >C3</td><td >=WENN(X5&lt;2;"Ja";"Nein")</td></tr></table></td></tr></table> <br /><br /><span style="font-family:Arial; font-size:9pt; font-weight:bold;background-color:#ffffff; color:#000000; ">Excel Tabellen im Web darstellen &gt;&gt; </span><a style ="font-family:Arial; font-size:9pt; color:#fcf507; background-color:#800040; font-weight:bold;" href="http://www.excel-jeanie-html.de" target="_blank"> Excel Jeanie HTML 4 </a>

jan_0815
04.05.2009, 15:30
Hallo Jürgen,

manchmal sind die einfachen Lösungen die besten. An so etwas hatte ich gar nicht gedacht, sondern immer nur kompliziert in Funtionen. So geht es auf jeden Fall, Danke!

Sollte dennoch jemand eine entsprechende Funktion kennen, wäre ich sehr dankbar.

Viele Grüße
Jan