Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Text in Formel wandeln

3,524 views
Skip to first unread message

H.P.Leitner

unread,
Nov 11, 2000, 3:00:00 AM11/11/00
to
Hallo zusammen,
gibt es eine Möglichkeit, eine durch "verketten" gewonnene Formel zum Leben
zu erwecken?

Beispiel:
A1 = 30
A2 = *
A3 = 40
A4 = verketten("=";a1;a2;a3)

somit steht in als Ergebnis in A4 =30*40
es sollte jedoch 1200 stehen.

Schnönes Wochenende

Gruß Hanspeter

Hanspete...@t-online.de

Martin Worm

unread,
Nov 11, 2000, 3:00:00 AM11/11/00
to
On Sat, 11 Nov 2000 10:52:21 +0100, "H.P.Leitner"
<Hanspete...@t-online.de> wrote:

>Hallo zusammen,
>gibt es eine Möglichkeit, eine durch "verketten" gewonnene Formel zum Leben
>zu erwecken?
>
>Beispiel:
>A1 = 30
>A2 = *
>A3 = 40
>A4 = verketten("=";a1;a2;a3)
>
>somit steht in als Ergebnis in A4 =30*40
>es sollte jedoch 1200 stehen.
>

hallo Hanspeter

ich glaube nicht. Verketten ergibt Texte zum Anzeigen.
Du wirst wohl in A4 ="A1*A3" verwenden müssen.

mfG

-
E-Mail von Martin Worm, Karlsruhe, Deutschland
Adresse: marti...@karlsruhe.netsurf.de
benutze Excel95(7.0) und Excel2000

H.P.Leitner

unread,
Nov 11, 2000, 3:00:00 AM11/11/00
to
Hallo Martin,
danke für Deine Antwort.

Das Problem ist aber, was mache ich wenn ich das nächste mal statt * ein /
brauche?
Somit müßte ich immer die Zelle A4 editieren, mit dem Cursor an die richtige
Stelle fahren
ein Zeichen löschen und das andere schreiben.
Wenn meine Methode ging, dann muß ich nur in der Zelle A2 den Operanten
ändern.

Naja, vieleicht fällt noch jemanden was ein.

Gruß HPL

"Martin Worm" <marti...@karlsruhe.netsurf.de> schrieb im Newsbeitrag
news:jfaq0tcjiit4bic62...@4ax.com...

Peter Haserodt

unread,
Nov 11, 2000, 3:00:00 AM11/11/00
to
Hi,
in einem Modul der Arbeitsmappe (VBA)

Public Function EvalNutzen(Text As String) As Double
EvalNutzen = Evaluate(Text)
End Function
Dann über den Funktionsassistenten unter benutzerdefiniert aufrufen:


Angenommen in A1 steht B3, in B1 * und in C1 steht B4 dann
dann in D1:
=EvalNutzen(VERKETTEN(A1;B1;C1))


Gruß Peter
--
www.haserodt.de

H.P.Leitner

unread,
Nov 11, 2000, 3:00:00 AM11/11/00
to
Hallo Peter,
danke für Deine Hilfe,
ich bekomme nur die Funktion im Funktionsassistenten unter Benutzerdefiniert
nicht zu sehen.
Wenn ich die Funktion im VBA getastet habe, wohin damit (wo speichern?)

Gruß HPL


"Peter Haserodt" <peter.h...@netsurf.de> schrieb im Newsbeitrag
news:OOijkPA...@cppssbbsa02.microsoft.com...

Frank Arendt-Theilen

unread,
Nov 11, 2000, 3:00:00 AM11/11/00
to
Hallo Hanspeter,
erstelle im Menü Einfügen/Namen/Festlegen/Name: Auswerte, Bezieht sich
auf: =AUSWERTEN(INDIREKT("ZS(-1)";FALSCH))
In die Zelle B4 trägst du anschließend ein: =Auswerten

Allerdings wird kannst du ein Divisionszeichen nur mit führendem
einfeachen Apotroph in eine Zelle eintragen.
Die Formel =Auswerten steht immer rechts von deiner
Verketten-Funktion.

MfG Frank
_____________________________________________________
Frank Arendt-Theilen, Microsoft MVP für Excel, Hameln
E-Mail: Thei...@t-online.de


Am Sat, 11 Nov 2000 10:52:21 +0100, schrieb "H.P.Leitner"
<Hanspete...@t-online.de> in microsoft.public.de.excel zu "Text
in Formel wandeln":

>Hallo zusammen,
>gibt es eine Möglichkeit, eine durch "verketten" gewonnene Formel zum Leben
>zu erwecken?
>
>Beispiel:
>A1 = 30
>A2 = *
>A3 = 40
>A4 = verketten("=";a1;a2;a3)
>
>somit steht in als Ergebnis in A4 =30*40
>es sollte jedoch 1200 stehen.
>

Manfred Grieble

unread,
Nov 11, 2000, 3:00:00 AM11/11/00
to
H.P.Leitner schrieb...

>gibt es eine Möglichkeit, eine durch "verketten" gewonnene Formel
>zum Leben zu erwecken?

>Beispiel:
>A1 = 30
>A2 = *
>A3 = 40
>A4 = verketten("=";a1;a2;a3)

Hallo H.P.,

versuchs' mal mit folgendem der Tabelle1 zugeordneten Makro:

Private Sub Worksheet_Change(ByVal Target As Range)
a1 = Range("a1").Value
a2 = Range("a2").Value
a3 = Range("a3").Value
If Target.Address = "$A$1" Or Target.Address = "$A$2" _
Or Target.Address = "$A$3" Then
Range("A4").Formula = "=" & a1 & a2 & a3
End If
End Sub

Gruß Manfred

Manfred Grieble

unread,
Nov 11, 2000, 3:00:00 AM11/11/00
to
Frank Arendt-Theilen schrieb in Nachricht...

>Allerdings wird kannst du ein Divisionszeichen nur mit führendem
>einfeachen Apotroph in eine Zelle eintragen.

Oder direkt in das Eingabefenster schreiben indem dieses selek-
tiert wird. Da hab' ich auch eine Weile rumprobiert.

Guß Manfred

Frank Arendt-Theilen

unread,
Nov 11, 2000, 3:00:00 AM11/11/00
to
den vorhergehenden Beitrag noch einmal fehlerfrei und mit dem Zusatz
von Manfred:

erstelle im Menü Einfügen/Namen/Festlegen/den Namen: Auswerten,


Bezieht sich auf: =AUSWERTEN(INDIREKT("ZS(-1)";FALSCH))
In die Zelle B4 trägst du anschließend ein: =Auswerten

Allerdings kannst du ein Divisionszeichen nur mit führendem,
einfachen Apostroph oder bei direkter Zellbearbeitung bzw. in der
Bearbeitungsleiste in eine Zelle eintragen.


Die Formel =Auswerten steht immer rechts von deiner
Verketten-Funktion.

MfG Frank
_____________________________________________________
Frank Arendt-Theilen, Microsoft MVP für Excel, Hameln
E-Mail: Thei...@t-online.de


Am Sat, 11 Nov 2000 20:13:09 +0100, schrieb Frank Arendt-Theilen
<Thei...@t-online.de> in microsoft.public.de.excel zu "Re: Text in
Formel wandeln":

>Hallo Hanspeter,


>erstelle im Menü Einfügen/Namen/Festlegen/Name: Auswerte, Bezieht sich
>auf: =AUSWERTEN(INDIREKT("ZS(-1)";FALSCH))
>In die Zelle B4 trägst du anschließend ein: =Auswerten
>

>Allerdings wird kannst du ein Divisionszeichen nur mit führendem
>einfeachen Apotroph in eine Zelle eintragen.

>Die Formel =Auswerten steht immer rechts von deiner
>Verketten-Funktion.
>
>MfG Frank
>_____________________________________________________
>Frank Arendt-Theilen, Microsoft MVP für Excel, Hameln
>E-Mail: Thei...@t-online.de
>
>
>Am Sat, 11 Nov 2000 10:52:21 +0100, schrieb "H.P.Leitner"
><Hanspete...@t-online.de> in microsoft.public.de.excel zu "Text
>in Formel wandeln":
>
>>Hallo zusammen,

>>gibt es eine Möglichkeit, eine durch "verketten" gewonnene Formel zum Leben
>>zu erwecken?
>>
>>Beispiel:
>>A1 = 30
>>A2 = *
>>A3 = 40
>>A4 = verketten("=";a1;a2;a3)
>>

Manfred Grieble

unread,
Nov 11, 2000, 3:00:00 AM11/11/00
to
Manfred Grieble schrieb...

>Private Sub Worksheet_Change(ByVal Target As Range)
>a1 = Range("a1").Value
>a2 = Range("a2").Value
>a3 = Range("a3").Value
>If Target.Address = "$A$1" Or Target.Address = "$A$2" _
>Or Target.Address = "$A$3" Then
>Range("A4").Formula = "=" & a1 & a2 & a3
>End If
>End Sub

Hi nochmal,

ich hab' grad noch ein biss'l damit rumprobiert. Wenn du Dezimal-
zahlen hast wirst du Probleme damit bekommen. Der Grund ist, daß
Excel auf Tabellenebene das Komma als Dezimalzeichen nimmt, auf
Makroebene aber den Punkt.
Also in der Tabelle dann eben 1.25 statt 1,25 eingeben, dann funzt
es auch mit Dezimalzahlen.
Damit Excel aber (weil es ja immer schlauer sein will) die Zahl
dann nicht als Datum interpretiert, mußt du A1 bis A3 als Text for-
matieren, A4 als Zahl.

Gruß, Manfred


H.P.Leitner

unread,
Nov 11, 2000, 3:00:00 AM11/11/00
to
Vielen Dank an alle für die Unterstützung und Vorschläge,
werde Sie morgen mal versuchen, für heute reichts mir mit A1 und Konsorten
(;-)


Gute Nacht an alle

Hanspeter


"Manfred Grieble" <gri...@dialup.nacamar.de> schrieb im Newsbeitrag
news:8ukf19$24v0r$1...@ID-13535.news.dfncis.de...

Manfred Grieble

unread,
Nov 12, 2000, 3:00:00 AM11/12/00
to
H.P.Leitner schrieb in Nachricht...

>Vielen Dank an alle für die Unterstützung und Vorschläge,
>werde Sie morgen mal versuchen, für heute reichts mir mit
>A1 und Konsorten

Diese halbfertige Lösung hat mir einfach keine Ruhe gelassen.
Hier die endgültige Form (ersetzt meinen 2. Vorschlag). Funk-
tioniert auch wenn auf Tabellenebene "." statt "," eingegeben
wird (A1:A3 als Text formatiert):

Private Sub Worksheet_Change(ByVal Target As Range)
a1 = Range("a1").Value
a2 = Range("a2").Value
a3 = Range("a3").Value

a1 = Replace(a1, ",", ".") 'Komma durch Punkt ersetzen
a3 = Replace(a3, ",", ".")


If Target.Address = "$A$1" Or Target.Address = "$A$2" _
Or Target.Address = "$A$3" Then
Range("A4").Formula = "=" & a1 & a2 & a3
End If
End Sub

Gruß, Manfred

Martin Worm

unread,
Nov 12, 2000, 3:00:00 AM11/12/00
to
On Sat, 11 Nov 2000 22:50:14 +0100, "Manfred Grieble"
<gri...@dialup.nacamar.de> wrote:

>Manfred Grieble schrieb...


>
>>Range("A4").Formula = "=" & a1 & a2 & a3


hallo Manfred,

nimm Range("A4").formulalocal, dann versteht XL auch Kommazahlen.

hth

Peter Haserodt

unread,
Nov 12, 2000, 3:00:00 AM11/12/00
to

Hi ,
Beispielmappe an dich per PE unterwegs

Gruß Peter

--
www.haserodt.de

0 new messages