Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Formel als text mit zellbezügen auslesen

Forumthread: Formel als text mit zellbezügen auslesen

Formel als text mit zellbezügen auslesen
18.02.2004 23:20:11
cunradus
n'abend miteinander.
nachfolgendes problem schon weiter unten mit sepp diskutiert.
ich habe die verschiedensten zellen mit bestimmten werten.
nunmehr will ich eine formel erstellen, nicht zur berechnung, sondern zur berechnungsdarstellung des nachfolgenden ergebnisses. dies mit der jeweiligen darstellung der werte, nicht der zellbezeichnungen.
also z.b.
a1=2
b1=2
c1=3
formel in d1:'=a1+b1+c1'
ziel ist nunmehr die ausgabe: '2 + 2 + 3 ='
sepp hat mir dazu folgenden programm-code gesendet:
Function Rechenweg(Bereich As Range) As String
Dim str As String
If Bereich.Count > 1 Then Bereich = Bereich(1)
Rechenweg = Bereich.Address(0, 0) & " " & Bereich.FormulaLocal
End Function
dieser hat leider nur den nachteil, dass nachfolgende darstellung erfolgt:
d1=a1+b1+c1
was muss an dem code geändert werden, um obigen wunschvorstellungen gerecht zu werden??
(im eigentlichen ging meine frage dahin, ob es eine möglichkeit der verknüpfung des formeleditors mit zellen gibt)
mit dank
cunradus
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formel als text mit zellbezügen auslesen
19.02.2004 08:02:51
andre
hallo cunradus,
habe mal eine zweite funktion erstellt:


Function Rechenweg2(Bereich As Range) As String
'von Andre Schau / 19.02.2004
Dim RechenZeichen, RechenWeg
Dim RechenZeichenStelle As Integer
  If Bereich.Count > 1 Then Bereich = Bereich(1)
  RechenWeg = Bereich.Address(0, 0) & " " & Bereich.FormulaLocal
  RechenZeichen = Array("=", "+", "-", "*", "/", "^")
  RechenZeichenStelle = Len(RechenWeg)
  Do While RechenWeg <> ""
    For i = 0 To UBound(RechenZeichen)
      If InStr(RechenWeg, RechenZeichen(i)) < RechenZeichenStelle And _
        InStr(RechenWeg, RechenZeichen(i)) <> 0 Then _
        RechenZeichenStelle = InStr(RechenWeg, RechenZeichen(i))
    Next
    If RechenZeichenStelle = Len(RechenWeg) Then
      Rechenweg2 = Rechenweg2 & Range(RechenWeg)
      RechenWeg = ""
    Else
      Rechenweg2 = Rechenweg2 & Range(Left(RechenWeg, RechenZeichenStelle - 1)) & _
                Mid(RechenWeg, RechenZeichenStelle, 1)
      RechenWeg = Right(RechenWeg, Len(RechenWeg) - RechenZeichenStelle)
    End If
    RechenZeichenStelle = Len(RechenWeg)
  Loop
End Function

     Code eingefügt mit Syntaxhighlighter 2.5

grusss endre
Anzeige
AW: Formel als text mit zellbezügen auslesen
19.02.2004 09:44:12
cunradus
dank dir, kann sie erst am samstag testen, melde mich dann noch mal, ob alles geklappt hat.
cunradus
AW: nochmal ich
19.02.2004 10:49:18
cunradus
hallo endre,
doch noch zum testen gekommen.
funktioniert soweit ganz gut.
allerdings benötige ich das ergebnis vo dem gleichheitszeichen nicht. bekommt man das irgendwie weg, komme mit vba nicht klar.
weiterhin kommt es zur fehlermeldung '#wert', wenn sich in der formel berechnungsoperatoren wie z.B. a1/100 oder dergleichen.
bekommt man das auch noch irgendwie hin??
gruß
cunradus
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige