Anzeige
Archiv - Navigation
1260to1264
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

Eingabewert durch Ergebnis austauschen

Eingabewert durch Ergebnis austauschen
Werner
Hallo Forum,
Habe mir mal wieder selber eine Aufgabe gestellt für dich keine Lösung finde.
Ich weiß auch nicht ob das überhaupt möglich.
Wenn ja; hat jemand evtl. einen Lösungsvorschlag – auch VBA?
In einer Tabelle „A“ werden in den Zellen der Spalte F Zahlen eingegeben.
Zum Beispiel in...
F27 = 10.000,00
F28 = 7.500,00
Die Zahlen werden für folgende Berechnung benötigt: =+(F27-(((F27*('B'!H21+'B'!H22+'B'!H24)))))
Zahlenin den Feldern obiger Formel: (123-(((123*('B'4,95%+'B'13,95%+'B'12,82%)))))
Ergebnis: 6.827,24
Ergebnis: 5.120,88
Ich mir vor, dass nunmehr das Ergebnis anstelle des eingegebenen Werts in Zelle F27 der Tabelle „A“ angezeigt wird. Die Zellen H21, H22 und H24 in der Tabelle „B“ sind Konstante, die Zelleninhalte nicht.
Gruß und Danke für die Unterstützung
Werner
AW: Eingabewert durch Ergebnis austauschen
26.04.2012 13:52:52
André
=(F27-(((F27*('B'!$H$21+'B'!$H$22+'B'!$H$24)))))
Es ist nicht leicht, deine frage zu verstehen. Wenn Du mit Konstanten arbeitest ist es besser sie zu "Dollarn" dann bleiben die Zellbezüge fest während die F- Bezüge sich mitlaufend verändern.
Wenn Du das Ergebnis in einer andern Zelle oder auf einen anderen Blatt angezeigt haben willst. Gibst du in die Zelle wo du das Ergebnis sehen willst = ein und klickst auf die Zelle von der du das Ergebnis übertragen willst. Geht auch auf unterschiedlichen Blättern, sogar bei unterschiedlichen Dateien.
AW: Eingabewert durch Ergebnis austauschen
26.04.2012 15:15:30
Werner
Hallo André,
Da hab ich mich wohl etwas ungeschickt ausgedrückt :-(.
Was ich mir vorstelle ist, dass nach der Eingabe einer Zahl in z.B. Zelle F27, in derselben Zelle das Ergebnis ausgegeben wird.
Es sollen also keine Eingabe und Ausgabezellen vorhanden sein.
Eingabezelle soll gleich der Ausgabezelle sein.
Da Excel ein "Zauberwerk" ist, ist dieses vielleicht wider aller Vorstellungen doch möglich.
Gruß
Werner
Anzeige
AW: Eingabewert durch Ergebnis austauschen
26.04.2012 17:18:07
Matthias
Hallo Werner,
Wenn du eine Formellösung haben möchtest, wirst du dafür eine Hilfspalte benötigen,
ansonsten nur eine VBA Lösung.
Du wirst so einen Zirkelbezug bekommen.
Gruß Matthias
AW: Eingabewert durch Ergebnis austauschen
27.04.2012 06:49:11
Werner
Guten Morgen Mathias,
sowas habe ich mir schon gedacht. Da ich aber kein Excel Prifi bin, frug ich mal nach.
Dann werde ich versuchen eine VBA- Lösung zu basteln.
Danke für die Info
Gruß
Werner
AW: Eingabewert durch Ergebnis austauschen
27.04.2012 07:24:06
hary
Hallo Werner
so?

With Sheets("B")
ActiveCell = ActiveCell - (((ActiveCell * (.Range("H21") + .Range("H22") + .Range("H24")))))
End With

gruss hary
Anzeige
AW: Eingabewert durch Ergebnis austauschen
27.04.2012 18:38:20
Werner
Hallo Harry,
Vielen Dank für Deinen Lösungsvorschlag.
Werde ich mal einbauen und sehen ob ich damit klar komme.
Dir ein angenehmes und hoffentlich langes Wochenende :-)
Ich werde jetzt meinen verlängerten Wochenenddienst antreten :-(
Anbei einen Ausschnitt aus der Mappe in welcher ich das Ganze umsetzen möchte. Vielleicht hilft es meinen Gedankengang besser nachzuvollziehen.
https://www.herber.de/bbs/user/79970.xlsm
Gruß
Werner
AW: Eingabewert durch Ergebnis austauschen
27.04.2012 19:47:28
Daniel
Hallo Werner,
ich möchte meinen Vorschlag auch noch loswerden, der ist zwar nicht so toll wie Harrys, machts aber auch.
Noch vier Sätze: Im reinen Excel weiß ich keine Lösung, also auch mit VBA. Wenn Du aus Versehen die Prozedur ein zweites Mal anschiebst, wird mit der neuen, z.B. in F27 befindlichen`Zahl nochmals gerechnet. Das Ergebnis ist dann nicht das gewollte.
Ich habe deshalb auch eine Rückrechnung gebastelt.
Sub Rechnen()
Dim dblAus As Double
Range("M1").FormulaR1C1 ="=R27C6-(R27C6*(B!R21C8+B!R22C8+B!R23C8))"
dblAus=Range("M1").Value
Range("F27")=dblAus
Range("M1").Clear
End Sub

Sub Rückrechnen()
Dim dblEin As Double
Range("M1").FormulaR1C1 ="=R27C6/(1-(B!R21C8+B!R22C8+B!R23C8))"
' 6828=x-(x*('B'4,95%+'B'13,95%+'B'12,82%))
' 4,95%+13,95%+12,82%=31,72%=0,3172
' Löst man diese Formel nach x auf, bleiben: x-0,3172x=6828, letztlich: 0,6828x=6828
' 6828/0,6828=10000
dblEin=Range("M1").Value
Range("F27")=dblEin
Range("M1").Clear
End Sub
Gruß
Daniel B.
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige