Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
712to716
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
712to716
712to716
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Funktionen im Sheet autom. aktualisieren

Funktionen im Sheet autom. aktualisieren
06.01.2006 12:08:19
Michael
Hallo,
ein Problemchen: ich habe innerhalb meines Sheets die Funktion "=urlaub()" eingebaut. diese macht nichts weiter, als in der selben Zeile in einem Kalender alle "x" zu suchen und zusammenzuzählen (muss so sein, da kommen nacher noch kompliziertere sachen mit rein, also "SUMIF" geht nicht!).
Das problem ist, dass sich diese selbsgemachten Funktionen nicht automatisch aktualisieren, wenn sich im kalender etwas verändert. Ich habe es auch noch nicht geschafft, die zellen, in denen die Funktion steht, nach "unten zu ziehen" und somit das selbe für weitere Zeilen zu machen (es wird nur der bereits berechnete Wert kopiert, nicht die Formel für die neue Zeile neu berechnet...)
weiss jemand Rat?

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Funktionen im Sheet autom. aktualisieren
06.01.2006 12:17:24
Uduuh
Hallo,
schreibe
Application.Volatile
an den Anfang der Funktion.
Gruß aus’m Pott
Udo

AW: Funktionen im Sheet autom. aktualisieren
06.01.2006 13:14:01
Michal
Zunächstmal vielen Dank,
ein Teil des Problems ist damit gelöst. Aber: ich schaffe es noch nicht, in verschiedenen Zellen die Funktion "=urlaub()" unabhängig voneinander (für berschiedene Zeilen...) zu nutzen - ändert sich ein Wert im Kalender in einer Zeile, ändern sich für alle Zeilen die berechneten urlaube.
hier die Funktion:
*************************************
Public

Function Urlaub() As Integer
Application.Volatile
spalte = 3
zeile = ActiveCell.Row
zähler = 0
For i = 3 To 33
If Cells(zeile, spalte).Value = "x" Then
zähler = zähler + 1
spalte = spalte + 1
Else
spalte = spalte + 1
End If
Next
Urlaub = zähler
End Function

********************************
Wo liegt mein Fehler?
Danke!
Anzeige
AW: Funktionen im Sheet autom. aktualisieren
06.01.2006 14:31:43
u_
Hallo,
du musst den Bereich, für den die Funktion gelten soll angeben!
=Urlaub(C1:AG1)
Die Schleifenkonstruktion finde ich totalen Unsinn. Und so wie das Aussieht geht es mit Zählenwenn.
Alternativcode:

Function Urlaub(rng As Range) As Integer
Application.Volatile
Dim c As Range
For Each c In rng
If c = "x" Then Urlaub = Urlaub + 1
Next
End Function

Gruß
Geist ist geil!
AW: Funktionen im Sheet autom. aktualisieren
06.01.2006 14:57:17
Michael
Hallo,
prima, vielen Dank! Ich habe nicht bedacht, dass activecell.row sich ja nicht auf die zelle bezieht, in der die formel steht, sondern auf die, die gerade markiert ist.
der for each - ansatz gefällt mir sehr gut, ich kannte den gar nicht.
Vielen Dank!
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige