ich habe einen Sourcecode gefunden, der die Anzahl der Werktage zwischen 2 Terminen berechnet. Was mich stört, ist der 3. Bereich "rngholliday". Wenn der nicht durch eine beliebige Zelladresse gefüllt ist, meldet die Funktion #WERT.
Wie kann man es bewerkstelligen, daß der 3. Bereich optional ist, also gar nicht erst gefüllt werden muss, wenn keine Urlaubs- oder Feiertage in diesem Datumsbereich existieren?
Function WERKTAGE(Startdatum As Date, Enddatum As Date, rngHolliday As Object) As Integer
Dim rng As Range
Dim iCounter As Integer, iStart As Integer
Dim iEnd As Integer, iTmp As Integer
iStart = 8 - Weekday(Startdatum)
iEnd = Weekday(Enddatum) - 1
iTmp = (Enddatum - Startdatum) - (iStart + iEnd)
iTmp = iTmp - (iTmp / 7)
iTmp = iTmp + iStart + iEnd
If Weekday(Startdatum) = 1 Then iTmp = iTmp - 1
For iCounter = 1 To rngHolliday.Rows.Count
Set rng = rngHolliday.Cells(iCounter, 1)
If rng >= Startdatum And rng <= Enddatum Then
If Weekday(rng) <> 1 Then iTmp = iTmp - 1
End If
Next iCounter
WERKTAGE = iTmp
End Function
Vielen Dank vorab für Hilfestellungen
Volker aus Köln