Supportnet / Forum / Tabellenkalkulation
Berechnungen in Textfeldern
Frage
Gibt es irgendeine Möglichkeit in einem Textfeld automatische Berechnungen anzustellen, oder dieses mit einer Zelle zu verknüpfen?? (Ich weiss, der Name Textfeld deutet ja schon auf Text hin, aber vielleicht gibt es ja trotz allem eine Möglichkeit.
Antwort 1 von Floooooo
Ja, die gibt es. (Allgemeine Frage, allgemeine Antwort.... wenn Du Dein Problem etwas genauer formulierst, kann man mehr sagen)
Antwort 2 von Severine
Hallo Flooo
Merci für deine schnelle Antwort. Es ist leider nicht mein eigenes Problem, sondern das eines Mitarbeiters, deshalb wollte ich vorerst nur wissen ob so was überhaupt möglich ist. Wie ich verstanden habe, arbeitet er mit einer Tabelle voller Textfelder, die monatlich in der Grösse und Position angepasst werden. In diesen Textfelder hat er je nach dem Nur-Text, Nur-Formeln, die er bisher von Hand ausrechnete (nur einfache Formeln wie z.B. Anzahl * Stück), oder sogar Text und Formlen)
Er hat mich nach einer Möglichkeit gefragt, die Formeln nicht jedesmal von Hand ausrechnen zu müssen. Ich nehme mal an, er sucht nach einer Möglichkeit, wie er die Formeln mit einer Zelle ausserhalb der Textfelder verknüpfen kann, damit jeweils nur diese Zelle verändert werden muss und die ganzen Resultate in den Textfeldern automatisch aktualisiert werden.
Genauer kann ich das Problem leider auch nicht schildern..
Merci für deine schnelle Antwort. Es ist leider nicht mein eigenes Problem, sondern das eines Mitarbeiters, deshalb wollte ich vorerst nur wissen ob so was überhaupt möglich ist. Wie ich verstanden habe, arbeitet er mit einer Tabelle voller Textfelder, die monatlich in der Grösse und Position angepasst werden. In diesen Textfelder hat er je nach dem Nur-Text, Nur-Formeln, die er bisher von Hand ausrechnete (nur einfache Formeln wie z.B. Anzahl * Stück), oder sogar Text und Formlen)
Er hat mich nach einer Möglichkeit gefragt, die Formeln nicht jedesmal von Hand ausrechnen zu müssen. Ich nehme mal an, er sucht nach einer Möglichkeit, wie er die Formeln mit einer Zelle ausserhalb der Textfelder verknüpfen kann, damit jeweils nur diese Zelle verändert werden muss und die ganzen Resultate in den Textfeldern automatisch aktualisiert werden.
Genauer kann ich das Problem leider auch nicht schildern..
Antwort 3 von Floooooo
Mmmm... klingt nicht ganz unkompliziert... denn insofern hast du recht: Text bleibt Text, und mit Text lässt sich nicht rechnen... ich wollte eher auf Konkatenation ("=A1 & A5") raus. Aber befrag doch mal die Excel-Hilfe nach "eval" oder so ähnlich. Von anderen Programmiersprachen kenne ich solche Funktionen, denen man als Parameter einen Ausdruck (String) mitgibt, der dann ausgewertet wird. Steht also eine Formel als Text, müsste sich das so lösen lassen.
Antwort 4 von Severine
habe leider nichts gefunden in der Office Hilfe. Mit VBA und anderen Programmiersprachen kenne ich mich gar nicht aus. Aber ist schon ok... immerhin habe ich keine Falschinformation herausgegeben, als ich weitergab, das dies wenn überhaupt bestimmt nicht einfach zu lösen wäre...
Merci Dir..
Merci Dir..
Antwort 5 von Guenter
Hallo,
mit VBA kann man das wahrscheinlich machen. Dazu müsste man aber mehr Details kennen. Du kannst mit VBA den Inhalt der Textboxen (oder Teile davon) in Zellen schreiben und umgekehrt. Das kannst Du mit der Makroaufzeichnung testen.
In den Zellen kann man dann natürlich rechnen.
Gruß
Günter
mit VBA kann man das wahrscheinlich machen. Dazu müsste man aber mehr Details kennen. Du kannst mit VBA den Inhalt der Textboxen (oder Teile davon) in Zellen schreiben und umgekehrt. Das kannst Du mit der Makroaufzeichnung testen.
In den Zellen kann man dann natürlich rechnen.
Gruß
Günter
Antwort 6 von xxxxxxxxxxxxxxxxxxx
hi alle
1) vba kenntnisse vorrausgesetzt
2)laenge der zelle ermitteln
3)zahlen und operanden ermitteln und isolieren gegebenfalls pos festhalten
4)berechnung durchfuehren
5)durch festgehaltende pos text aktualisieren
1) vba kenntnisse vorrausgesetzt
2)laenge der zelle ermitteln
3)zahlen und operanden ermitteln und isolieren gegebenfalls pos festhalten
4)berechnung durchfuehren
5)durch festgehaltende pos text aktualisieren
Antwort 7 von Traumtaenzer
@Mr. X
Hmm, Länge welcher Zelle? Es geht um Textfelder...
good nighty,
Traumtänzer
Hmm, Länge welcher Zelle? Es geht um Textfelder...
good nighty,
Traumtänzer
Antwort 8 von Friedel
Um was geht es jetzt? Ursprünglich ging es um Excel. Excel-Dokumente sind Dokumente, die aus lauter Zellen bestehen. Wenn eine Zelle Text enthält kann man auch die Länge bestimmen. Die Formel dürfte bei euch etas anders aussehen als bei mir, weil ich MS Office auf Englisch habe.
Das ganze lässt sich recht einfach machen, wenn die Tabelle jedes mal gleichartig sind. Wenn also in jeder Tabelle an der selben Stelle ein Wert steht, mit dem bei allen Tabellen das selbe gemacht wird. Oder wenn zumindest immer an der selben Stelle steht, was mit dem Wert gemacht werden soll. Einen Text in eine Zahl um zu wandeln ist dabei kein Problem. Das sind aber die Grundfunktionen von Excel. Der Kolege sollte sich mal mit dem Programm beschäftigen. Das Programm mit dem man Texte (auch in Tabellen) bearbeitet heißt Word. Mit Excel macht man Tabellenkalkulation. Es gibt jede Menge Anleitungen für Excel.
Das ganze lässt sich recht einfach machen, wenn die Tabelle jedes mal gleichartig sind. Wenn also in jeder Tabelle an der selben Stelle ein Wert steht, mit dem bei allen Tabellen das selbe gemacht wird. Oder wenn zumindest immer an der selben Stelle steht, was mit dem Wert gemacht werden soll. Einen Text in eine Zahl um zu wandeln ist dabei kein Problem. Das sind aber die Grundfunktionen von Excel. Der Kolege sollte sich mal mit dem Programm beschäftigen. Das Programm mit dem man Texte (auch in Tabellen) bearbeitet heißt Word. Mit Excel macht man Tabellenkalkulation. Es gibt jede Menge Anleitungen für Excel.
Antwort 9 von Traumtaenzer
@Severine
In Ergänzung zu Günters Antwort bezüglich VBA und Textfeldern hier mal ein kleines Makro-Beispiel. Dabei geht es um zwei Textfelder (Index 1 und 2, wird fortlaufend von Excel vergeben) im aktuellen Arbeitsblatt. Aus dem ersten wird der gesamte Text gelesen und in Zelle A1 geschrieben. Aus dem zweiten Feld werden ab Zeichen Nr. 3 fünf Zeichen ausgelesen und in Zelle A2 geschrieben.
(das CDbl ist hier nur drin als Beispiel für die Umwandlung einer Zahl mit Komma in eine "echte" Zahl, da in VBA nur der Punkt als Dezimalzeichen erlaubt ist)
Ist natürlich nur ein Ansatz, aber vielleicht hilft es dir weiter.
@Friedel
Bei welcher Gelegenheit fallen dir nur solche Kommentare ein?
> "Excel-Dokumente sind Dokumente, die aus lauter Zellen bestehen."
Eine etwas einseitige Betrachtung des Excel-Dateiformats. Noch nie Textfelder (und viele andere Sachen) in einem Arbeitsblatt gesehen? Nein - keine Zellen mit Text, sondern TEXTFELDER ;-)
> "Der Kolege sollte sich mal mit dem Programm beschäftigen."
Klingt sehr selbstgefällig. Täte dir aber vielleicht auch ganz gut...
> "Das Programm mit dem man Texte (auch in Tabellen) bearbeitet heißt Word."
Naja, besser wäre: "Ein Programm, mit dem ..."
Und auch in Word gibt es diese ominösen Textfelder... genau wie in Excel ;-)
> "Es gibt jede Menge Anleitungen für Excel."
Daß darauf noch keiner gekommen ist? ;-)
mfg, Traumtänzer
In Ergänzung zu Günters Antwort bezüglich VBA und Textfeldern hier mal ein kleines Makro-Beispiel. Dabei geht es um zwei Textfelder (Index 1 und 2, wird fortlaufend von Excel vergeben) im aktuellen Arbeitsblatt. Aus dem ersten wird der gesamte Text gelesen und in Zelle A1 geschrieben. Aus dem zweiten Feld werden ab Zeichen Nr. 3 fünf Zeichen ausgelesen und in Zelle A2 geschrieben.
Sub Textfeld_auslesen()
With ActiveSheet
.Range("A1") = .Shapes(1).TextFrame.Characters.Text
.Range("A2") = CDbl(.Shapes(2).TextFrame.Characters(3, 5).Text)
End With
End Sub(das CDbl ist hier nur drin als Beispiel für die Umwandlung einer Zahl mit Komma in eine "echte" Zahl, da in VBA nur der Punkt als Dezimalzeichen erlaubt ist)
Ist natürlich nur ein Ansatz, aber vielleicht hilft es dir weiter.
@Friedel
Bei welcher Gelegenheit fallen dir nur solche Kommentare ein?
> "Excel-Dokumente sind Dokumente, die aus lauter Zellen bestehen."
Eine etwas einseitige Betrachtung des Excel-Dateiformats. Noch nie Textfelder (und viele andere Sachen) in einem Arbeitsblatt gesehen? Nein - keine Zellen mit Text, sondern TEXTFELDER ;-)
> "Der Kolege sollte sich mal mit dem Programm beschäftigen."
Klingt sehr selbstgefällig. Täte dir aber vielleicht auch ganz gut...
> "Das Programm mit dem man Texte (auch in Tabellen) bearbeitet heißt Word."
Naja, besser wäre: "Ein Programm, mit dem ..."
Und auch in Word gibt es diese ominösen Textfelder... genau wie in Excel ;-)
> "Es gibt jede Menge Anleitungen für Excel."
Daß darauf noch keiner gekommen ist? ;-)
mfg, Traumtänzer
Antwort 10 von Traumtaenzer
Natürlich geht der umgekehrte Weg auch: aus einer Zelle etwas in ein Textfeld schreiben, z.B.
ActiveSheet.Shapes(3).TextFrame.Characters.Text = ActiveSheet.Range("A3")
mfg, Traumtänzer
ActiveSheet.Shapes(3).TextFrame.Characters.Text = ActiveSheet.Range("A3")
mfg, Traumtänzer
Antwort 11 von Severine
Hallo Traumtänzer..
Merci für deine Anwort. Ich habe bisher leider noch nie mit Makros gearbeitet, doch ich werde deine Lösung ausprobieren. Besten Dank.. ab deinem Kommentar zu Friedel habe ich mich köstlich amüsiert.. grins..
Merci für deine Anwort. Ich habe bisher leider noch nie mit Makros gearbeitet, doch ich werde deine Lösung ausprobieren. Besten Dank.. ab deinem Kommentar zu Friedel habe ich mich köstlich amüsiert.. grins..

