seit der Umstellung von Excel 2002 auf Excel 2003 wird bei mir in einem Arbeitsblatt eine Ergebnisanzeige welche durch eine Funktion bestimmt wird durch eine Spin-Button Aktion nicht korrekt angezeigt.
Es handelt sich um einen Jahreskalender welcher mehr wie 600 Zeilen umfasst. Um nicht von Monat zu Monat zu scrollen, verwende ich einen Spin-Butten. Diese Anweisung ist im Tabellenblatt abgelegt.
Private Sub SpinButton1_Change()
[a15].Select
If SpinButton1.Value = 0 Then
Rows("1:1000").Hidden = False
Else
Rows("1:" & SpinButton1.Value).Hidden = True
Rows(SpinButton1.Value + 1 & ":1000").Hidden = False
End If
End Sub
... funktioniert wunderbar.
Meine Funktion ist in einem Modul abgelegt und addiert immer am Ende einer Zeile, Zellenfelder nach Farben. Dieses Ergebnis wird in den nächsten Monat mit übernommen - Zellen werden wieder gezählt - Wert addiert - ausgegeben und zum nächsten Monat.
Private Function Urlaub(Gesamt%, Bereich As Range)
Dim C As Range
For Each C In Bereich
Select Case C.Interior.ColorIndex
Case 38, 3, 7: Gesamt = Gesamt - 1
End Select
Next C
Urlaub = Gesamt
End Function
Wenn ich mit dem Spinn-Button nun zu dem nächsten Monat springe (50 Zeilen abwärts)erscheint in der Zelle wo die Farben gerechnet wurden ein "Lattenzaun"(Wert) mit dem Hinweis:
"Ein in der Formel verwendeter Wert ist vom falschen Datentyp"?
Klicke ich doppelt auf die Zelle mit dem Funktionsaufruf und bestätige mit Enter erhalte ich wieder die richtige Anzeige - bis zur nächsten Spinn-Button aktion.
Kann mir jemand helfen wie ich das abstellen kann? Hoffe mich einigermaßen verständigt ausgedrückt zu haben.
Gruß Frank