Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1680to1684
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
Inhaltsverzeichnis

Benutzerdefinierte Funktion manuell berechnen

Benutzerdefinierte Funktion manuell berechnen
10.03.2019 18:34:16
Bongobob
Moin zusammen,
ich nutze eine Benutzerdefinierte Funktion in VBA um zu ermitteln, auf welcher Seite sich eine bestimmte Zelle befindet. Diese Funktion benötigt doch recht viele Ressourcen. Diese Funktion enthält Application.Volatile, welche dafür sorgt, dass diese Funktion ja bei jedem Speichern etc. neu berechnet wird.
Gibt es eine Möglichkeit, diese benutzerdefinierte Funktion nicht neu zu berechnen, wenn gespeichert etc., wird, sondern nur wenn ich z.B. einen Button drücke oder dies an eine andere Bedingung knüpfe (z.B. Wert in bestimmter Zelle?).
Ich kenne mich leider nicht mit diesen Funktionen aus, daher weiss ich hier nicht wirklich weiter.
Danke und Grüße!

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Benutzerdefinierte Funktion manuell berechnen
10.03.2019 18:46:06
onur
Wie sieht denn die Funktion aus?
AW: Benutzerdefinierte Funktion manuell berechnen
10.03.2019 19:06:04
Luschi
Hallo Bongobob,
an das Gejammere um volatile Funktionen beteilige ich mich nicht, ich benutze sie einfach deshalb:
- jede nicht volatile Funktion in der bedingten Formatierung wird automatisch volatil-
Außerdem nützt Dir eine nicht volatile Funktion zu diesem Problem gar nichts - wenn sich der Tabellenaufbau ändert, Daten hinzukommen/gelöscht werden, arbeitet Dein System mit falschen Daten/Zuständen.
Laß also die Kirche im Dorf, oder arbeitest Du mit Excel auf einem schwachbrüstigen Handy?
Gruß von Luschi
aus klein-Paris
PS: wegen der Klimaerwärmung fällt ja auch keine Motorsport-Serie aus (F1, DTM, Indycar, usw. läßt grüßen)
Anzeige
AW: Benutzerdefinierte Funktion manuell berechnen
10.03.2019 20:36:00
Daniel
Hi
grundsätzlich ist es so, dass Excel eine Formel dann neu berechnet, wenn sich der Wert einer der Zellen, auf die sich die Formel bezieht, ändert.
mit Application.Volatile im Code der Funktion erreichst du, dass eine Formel mit dieser Funktion bei jeder Änderung eines beliebigen Zellwertes (egal wo, auch in einer anderen geöffneten Datei) neu berechnet wird. (was bei rechenzeitintensiven Formeln nicht optimal ist).
wenn du jetzt erreichen willst, dass die Funktion nur auf deine Anforderung hin neu berechnet wird, dann dann kannst du das am einfachsten so erreichen:
1. lösche das Application.Volatile aus dem Quellcode.
2. bette die Funktion in eine WENN-Funktion nach diesem Schema ein: =Wenn(Wahr;DeineFunktion();A1)
um die Formel neu berechnen zu lassen, änderst du einfach den Wert von A1.
Gruß Daniel
Anzeige
AW: Benutzerdefinierte Funktion manuell berechnen
14.03.2019 18:04:19
Bongobob
Hi Daniel,
vielen Dank für deine Anwtwort. Das hat mich geholfen. Nun ist die Tabelle für Anwender besser nutzbar. Vielen Dank und Grüße,
Bongobo
Bisher habe ich noch nie gesehen, ...
11.03.2019 04:12:29
Luc:-?
…Bob (& all),
dass jemand die Volatilität einer UDF optional gemacht hätte. Das ist aber möglich, indem man ein zusätzliches Argument vorsieht, das sich auch auf einen ZellEintrag, eine benannte Konstante o.ä. beziehen könnte. Ein Bsp dafür liefert meine UDF NoErrRange, die hier zu finden ist.
Morhn, Luc :-?
„Die Intelligenzmenge ist auf diesem Planeten eine Konstante, die Bevölkerung nimmt aber zu!“ Auch deshalb informieren mit …
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige