Excel97 Visual-Basic-Funktion Formula?

Von: , Frage gestellt am Mo, 26. Jun 2000

Hallo Visual-Basic-Kenner

ich möchte in einer Excel-Tabelle gerne folgendes realisieren


Beispiel:
in der Zelle "C2" steht die Formel "=Tabelle1!B6"

wie kann man den FormelTEXT als Text "rausziehen"?

D.h. eine Funktion so in der Art

=Formeltext(C2)

liefert als Ergebnis "Tabelle1!B6"

oder wenn die Formel in Zelle "C2" lautet =A1*B1-C$3

würde die Funktion als Ergebnis liefern

"A1*B1-C$3"


Hintergrund:
Entwicklung eines universellen Tools für Parametervariationen

Beispiel:
Es gibt irgendeine x-beliebige Berechnung in der der Einfluß eines bestimmten Parameters untersucht werden soll

Der Wert dieses Parameters steht in der Zelle "P15"

Der Benutzer gibt in einer speziellen Zelle (meinetwegen Zelle "F3" folgendes ein

"=" und klickt dann in auf die Zelle "P15"

D.h. in Zelle "F3" steht die Formel "=P15"

Nun soll die Funktion "=Formeltext(F3)"
als Ergebnis "P15" liefern.

Damit dieses Ergebnis von der Funktion "INDIREKT() weiterverarbeitet werden kann.

Ich hoffe ich konnte verständlich machen was ich möchte sonst bitte nochmal nachfragen.

Vielen Dank schon im Voraus

Stefan Ludwig

P.S.:
Der Visual-Basic Befehl "Formula" könnte dafür geeignet sein

Aber die Hilfe zu VB ist keine Hilfe für Anfänger sondern
Fachsimpelei für Leute die es eh schon drauf haben

oder kennt jemand eine gute Internetadresse wo man es lernen
oder auch noch fragen kann?

4 Antworten zu dieser Frage

  1. Antwort von nach 2 Stunden hilfreich
    Re: Excel97 Visual-Basic-Funktion Formula?

    Hi Stefan, Hallo Visual-Basic-Kenner

    ich möchte in einer Excel-Tabelle gerne folgendes realisieren


    Beispiel:
    in der Zelle "C2" steht die Formel "=Tabelle1!B6"

    wie kann man den FormelTEXT als Text "rausziehen"?
    Cells(2, 3). Formula = Chr(34) & Cells(2, 3).Formula

    Jetzt erkennt Excel die Formel als String und Du kannst den Wert Deiner VBA-Variablen zuweisen:

    Formel = Cells(2, 3). Formula

    Wenn Du Deinen ursprünglichen Zelleninhalt behalten willst, dann solltest Du den String aber in einer anderen Zelle aufbauen.
    D.h. eine Funktion so in der Art

    =Formeltext(C2)
    Function Formeltext(Zeile, Spalte) as String
    Cells (10000, 255).Formula = Chr(34) & Cells(2, 3).Formula
    Formeltext = Cells(10000, 255).Formula
    Cells(10000, 255).ClearContents
    end Function
    liefert als Ergebnis "Tabelle1!B6"

    ... P.S.:
    Der Visual-Basic Befehl "Formula" könnte dafür geeignet sein

    Aber die Hilfe zu VB ist keine Hilfe für Anfänger sondern
    Fachsimpelei für Leute die es eh schon drauf haben
    Ich habe es nur mit der Hilfe und Makroaufzeichen gelernt:-)
    oder kennt jemand eine gute Internetadresse wo man es lernen
    oder auch noch fragen kann?
    Wird morgen nachgeliefert, die links sind in meinen Favoriten in der Firma.


    Ciao

    Uwe

      • Antwort von nach 15 Stunden hilfreich
        wie wird die Funktion in Tabelle integriert?

        Hallo Uwe

        vielen Dank für die schnelle Antwort !!


        ich bin leider so blutiger Anfänger
        das ich jetzt nicht weiß wie diese Funktion in eine
        Excel-Tabelle integriert wird

        ich dachte man schreibt sich ne eigene Funktion so wie
        in Turbo-Pascal fügt die zu den anderen Makros
        unter

        Extras - Makros... - VB-Editor

        hinzu

        und kann fortan
        die eigene Funktion benutzen

        Dem scheint aber nicht so zu sein

        Vielen Dank schon im Voraus für weitere Tips

        viele Grüße

        Stefan Ludwig [Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

  2. Antwort von nach 3 Tagen hilfreich
    Re: Excel97 Visual-Basic-Funktion Formula?

    Hallo Stefan, Beispiel:
    in der Zelle "C2" steht die Formel "=Tabelle1!B6"

    wie kann man den FormelTEXT als Text "rausziehen"?
    Sieh Dir mal http://user.exit.de/jolorenz/formelzeigen.zip an. D.h. eine Funktion so in der Art

    =Formeltext(C2)
    Genau das findest Du dort, nur daß die Funktion Bezug(...) heißt.

    Viele Grüße

    Jörg

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!