Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
372to376
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
372to376
372to376
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

aufrufende Zelle?

aufrufende Zelle?
29.01.2004 19:38:24
MisterEd
Hallo!
Folgendes Problem:
Eine Funktion innerhalb des Blatt1 benötigt zum Berechnen den Inhalt einer anderen Zelle des gleichen Blattes. Eine direkte Übergabe des Wertes an die Funktion möchte ich umgehen.
Kann eine Funktion ermitteln, aus welchem Blatt / welcher Zelle sie aufgerufen wurde?
Danke

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: aufrufende Zelle?
29.01.2004 19:41:35
Bert
Hüa, wie wird die Funktion angestoßen?
Bert
AW: aufrufende Zelle?
29.01.2004 20:50:51
MisterEd
Hi Bert,
über einen Button in einer Symbolleiste werden Berechnungen durchgeführt und auf 12 Blättern verschiedene Werte X in der Zelle [V30] abgelegt. Wenn ich am Schluß ein Application.CalculateFull aufrufe, benutzt die Funktion immer nur den Wert des aktiven Blattes, anstelle des jeweiligen Wertes auf den Blättern.
Das Macro für die Berechnung ist ziemlich groß. Daher wäre es am einfachsten, wenn die Funktion weiß in welchem Blatt sie ist und dann den richtigen Wert benutzt. So eine Art "Wo bin ich?" Befehl.
MisterEd
NOCH OFFEN
29.01.2004 20:59:48
Bert
Tut mir Leid, das verstehe ich nicht.
Bert
Anzeige
AW: NOCH OFFEN
29.01.2004 21:15:32
MisterEd
Ich versuchs nochmal...
Der Benutzer gibt einen Wert in die Zelle E11 ein. In der Zelle I11 steht eine Function, der E11 übergeben wird. Die Function holt sich dann selbständig den Wert aus [V30] und führt eine Berechnung aus. Das Ergebnis steht ja dann in I11. Das ganze auf 12 Blättern.
Wenn ich nun die Function ändere, wird das Ergebnis ja nicht automatisch neu berechnet. Als drücke ich STRG-ALT-F9 (Application.CalculateFull).
Hierbei benutzt die Function leider immer den Wert der Zelle [V30] von dem gerade sichtbaren Blatt und nicht den Wert aus dem Blatt wo die Function aufgerufen wurde.
Am einfachsten wäre hier die Änderung von var = [V30] in var = "Blatt wo die Function ist".[V30], da eine Änderung der Datenblätter ein riesen Aufwand wäre, dem ich aus dem Weg gehen möchte.
MisterED
Anzeige
AW: NOCH OFFEN
29.01.2004 21:24:56
Bert
Gut beschrieben, aber ich raff es donnoch nicht.
Schreib mal als erste Zeile in deine Function
Application.Voaltile
Bert
AW: aufrufende Zelle?
29.01.2004 21:51:20
Reinhard
Hi MisterEd,
ja, sie kann ermitteln wer sie aufrief, probier mal als Test:

Function doppel(x As Range)
MsgBox Application.Caller.Address(external:=True)
doppel = x.Value * 2
End Function

Angezeigt wird dann als ein String: Mappennamen, Tabellennamen und Zellenbereich.
Mit instr kannst du ja nach ] bzw ! suchen wenn du nur Teistrings aus der Adresse willst.
Gruß
Reinhard

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige