Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1004to1008
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

UDF neu berechnen nach Start

UDF neu berechnen nach Start
02.09.2008 21:11:00
Peter
Guten Abend
In einigen Zellen in einer Arbeitsmappe frage ich mit =pfad() den Pfad ab.

Public Function pfad()
pfad = ThisWorkbook.path
End Function


Wenn ich nun die Datei schliesse und ein Verzeichnis innerhalb des Pfades ändere, wird der Pfad beim nächsten Aufstarten nicht neu berechnet.
Ich möchte das Problem nicht mit Application.Valatile oder mit der Formel =Zelle("Dateiname") lö _ sen sondern bei


Private Sub Workbook_Open()
als Befehl hinterlegen.
Manuell kann ich die Aktualisierung mit neu berechnen (F9) erreichen. Wenn ich dies mit dem  _
Makrorecorder aufzeichne, ergibt dies "Calculate". "Calculate funktioniert jedoch nicht, wenn ich dies bei Workbook_Open in den Code einfüge.
Mit welchem Befehl erreiche ich, dass alle UDFs in einem Workbook aktualsiert werden?
Danke für eine Antwort.
Gruss, Peter


		

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: UDF neu berechnen nach Start
03.09.2008 13:08:00
fcs
Hallo Peter,
mit Calculate in Workbook_Open scheint es tarsächlich nicht zu funktionieren.
Grundsätzlich berechnen sich Zellen nur neu wenn sich die Parameter-Werte in den Formeln ändern.
Ausnahmen sind Funktionen wie HEUTE(), ZUFALLSZAHL() etc.
Wenn deine benutzerdefinierten Funktionen keine Zellbezüge als Parameter verwenden, dann aktualisiert Excel solche Formeln nur bei der Formeleingabe dann nie wieder.
Wenn du auf Volatile verzichten willst, dann bleibt nur der Weg den benutzerdefinierten Funktionen einen Dummy-Parameter zu übergeben den Excel jeweils ´neu berechnet, damit die Zellen neu berechent werden.
Beispiel:

Public Function pfad(Dummy)
pfad = ThisWorkbook.Path
End Function
Zugehörige Zellformel:
=pfad(JETZT())


Gruß
Franz

Anzeige
AW: Vielen Dank, das klappt so!, Peter - owT
03.09.2008 13:39:16
Peter

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige