Wenn Sie ein Makro schreiben, kann es ausgeführt werden, wann immer Sie es ausführen möchten. Was ist, wenn Sie ein Makro entwickeln müssen, das ausgeführt wird, wenn sich etwas in Ihrem Arbeitsblatt ändert? Was ist, wenn das Makro automatisch ausgeführt werden soll? Dies ist insbesondere erforderlich, wenn Sie eine benutzerdefinierte Funktion erstellen, die Sie in den Zellen des Arbeitsblatts verwenden möchten.

Hier bietet sich die Volatile-Methode an. Sie müssen lediglich die folgende Anweisung in Ihr Makro aufnehmen:

Application.Volatile

Dadurch wird Excel darüber informiert, dass die Ergebnisse des Makros von den Werten im Arbeitsblatt abhängen und dass sie bei jeder Neuberechnung des Arbeitsblatts ausgeführt werden sollten. Betrachten Sie beispielsweise die folgende benutzerdefinierte Funktion:

Function CountCells(MyRange As Range)

Dim iCount As Integer     iCount = 0     For Each cell In MyRange         If cell.HasFormula Then             iCount = iCount + 1         End If     Next cell     CountCells = iCount End Function

Wenn diese Funktion in einer Zelle verwendet wird, zählt sie die Anzahl der Zellen, die Formeln innerhalb eines bestimmten Bereichs enthalten. Die Funktion wird jedoch nur ausgeführt, wenn sie zum ersten Mal in eine Zelle eingegeben wird oder wenn die Zelle mit der Formel bearbeitet wird. Wenn Sie möchten, dass die Funktion jedes Mal neu berechnet wird, wenn das Arbeitsblatt neu berechnet wird, fügen Sie die Volatile-Methode am Anfang der Funktion hinzu:

Function CountCells(MyRange As Range)

Dim iCount As Integer     Application.Volatile     iCount = 0     For Each cell In MyRange         If cell.HasFormula Then             iCount = iCount + 1         End If     Next cell     CountCells = iCount End Function

Durch die Einbeziehung der Application.Volatile-Methode wird diese Funktion (Makro) bei jeder Neuberechnung des Arbeitsblatts erneut ausgeführt.

_Hinweis: _

Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.

ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.

Dieser Tipp (10598) gilt für Microsoft Excel 2007, 2010, 2013, 2016, 2019 und Excel in Office 365. Eine Version dieses Tipps für die ältere Menüoberfläche von Excel finden Sie hier: