Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Excel Formel Bezüge in Werte umwandeln
#1
Hallo zusammen,

ich habe folgendes Problem, das es zu lösen gilt.

Es werden aus verschiedenen Excel Tabellen einzelne Zellen in einer neuen Tabelle als Addition eingesetzt, das sieht vereinfacht ohne die Tabellennamen dann Beispielsweise so aus:

=A1+B1+C1

Der Wunsch ist nun das die Formel anstatt der Zellen die tatsächlichen Werte anzeigt:

=123,54+254,25+125,00

Die Verknüpfung soll dabei aufgehoben werden, es soll der Rechenweg nachvollziehbar werden und das ist nur mit den wirklichen Werten möglich, da die anderen Tabellen zum Zeitpunkt der Prüfung nicht vorhanden sind. Es reicht also nicht nur das Ergebnis als Wert zu übernehmen, die Umwandlung ist mir bekannt.

Vielen Dank für eure Hilfevorab.

LG
Antworten Top
#2
Moin

Markiere jeden Zellbezug in der Formel, drücke F9 und dann ENTER.
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Antworten Top
#3
Servus!

Wie wäre es mit =VERKETTEN("=";A1;"+";B1;"+";TEXT(C1;"##0,00")).

Die Werte kannst du schon noch ändern, aber du siehst die komplette Rechnung.

Liebe Grüße
Alex
Antworten Top
#4
Die Variante von @shift-del macht was es soll, gibts das auch noch mit einem Befehl, das dann alle Bezüge in der Formel in Werte gewandelt werden? 

Wenn nicht ist das auf jeden Fall trotzdem eine riesen Hilfe, vielen Dank.

@Oldiefan Die Version mit Formeln ist viel zu kompliziert, das muss am Ende jemand ohne Vorkentnisse bedienen können und es sollen nur stumpf die Werte dort stehen. Aber die Idee ist sonst auch Klasse.
Antworten Top
#5
Hi,


Zitat:gibts das auch noch mit einem Befehl, das dann alle Bezüge in der Formel in Werte gewandelt werden? 

Das ist eine hochkomplexe Angelegenheit, da man den Formelstring komplett parsen und jedes Argument / jeden Bezug auf Auswertbarkeit überprüfen muss. Müssen ja vielleicht auch nicht immer einzelne Bezüge sein, sondern auch sowas wie =A1+SUMME(B5:B7)-B1.
Hatten wir zuletzt schon mal irgendwo - aber eine bereits existierende Lösung gab es nicht.
Antworten Top
#6
Nee es sollen am Ende ja nur die wirklichen Werte dort stehen, keine Formel. Der Idealfall wäre das mit F9, oder was auch immer, die ganze Formel einfach auf die tatsächlichen Werte geändert würde. Die Verknüfungen alle auf einen Klick in die Werte umgeschrieben werden und die Formel weiter funktioniert.
Antworten Top
#7
Wieso "Neee" - genau dazu hatte ich Dir doch geantwortet und geschrieben, dass das hochkomplex ist - auch wenn es immer nur einzelne Zellbezüge und simple mathematische Operatoren sind. Es wird halt nochmal um den Faktor 1000 komplexer, wenn man auch Funktionen innerhalb der Formel auswerten müsste - daher mein Beispiel mit SUMME(...). Wenn das in Deiner Anwendung nicht der Fall ist, fällt das natürlich weg - es bleibt aber nach wie vor ein sehr aufwändiges Unterfangen. Und ich kenne da auch keine bereits existierende Vorlage / UDF / Lösung.
Aber vielleicht fühlt sich jemand motiviert, das mal anzupacken.
Wenn es beispielsweise immer nur Additionen sind - und dazu nur mit einzelnen Zellbezügen - wäre das mit vertretbarem Aufwand machbar.
Die Erfahrung lehrt allerdings, dass es am Ende nicht bei der simplen Annahme bleibt.
Antworten Top
#8
Nee war darauf bezogen, das es nichts sein darf, was mit einer Formel einher geht. Die F9 Funktion ist genau was ich suche, nur am liebsten halt auf alle Verknüpfungen der Zelle. Wenn das nicht geht ist mit trotzdem geholfen und ich bedanke mich nochmal ganz herzlich!
Antworten Top
#9
Hi,

mit durchgängig Addition in der Formel ist es noch recht einfach.

Diese Funktion in ein allgemeines Modul packen:

Code:
Function Parsen(DieFormelzelle As Range) As String
Dim arr, x As Long, s As String
s = DieFormelzelle.Formula
arr = Split(s, "+")
For x = 0 To UBound(arr)
    s = Replace(s, arr(x), Evaluate(arr(x)))
Next x
Parsen = "=" & s
End Function


In Der Datei dann aufrufen mit:

=PARSEN(D1)

wobei D1 die Zelle mit der Formel ist (z.B. =A1+B1+C1)

Per VBA könnte man damit dann auch alle Zellen abklappern und die Formeln (=A1+B1+C1) durch die ausgewertete Variante (=123,54+254,25+125,00) ersetzen.
Antworten Top
#10
Ist lieb das du dir die Arbeit noch machst, aber das ist zu komplex, alleine weil dann schon weitere Zellen für die Übertragung benötigt werden.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste