Hallo Allerseits,
ich bin recht neu in dem Bereich und daher habe ich noch nicht viel Ahnung. Daher hier erstmal mein Code:
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
Dim Auswertung As Variant 'globales Array zum Aufsummieren der Farben
Private Sub Farben()
Dim merker_row, merker_col As Integer 'Positionsmerker
Dim Tage As Integer 'Schleiferzähler über die Tage und Anzahl Auswertungen
Dim Monate As Integer 'Schleiferzähler über die Monate und Anzahl Auswertungen
Dim aktuelleZelle As Range 'Schleifenzähler für Löschungen
Dim Farbwert As Integer 'Farbwert
merker_row = ActiveCell.Row 'Position merken für nach der Ausführung
merker_col = ActiveCell.Column
'alte Auswertung löschen
Application.ScreenUpdating = False 'Flackern des Bildschirms während der Makroausführung verhindern
For Each aktuelleZelle In Worksheets("Kalender").Range("AY3:AY7")
aktuelleZelle.Value = ""
Next aktuelleZelle
Application.ScreenUpdating = True 'Bildschirmaktualisierung wieder einschalten
'Summieren
Application.ScreenUpdating = False 'Flackern des Bildschirms während der Makroausführung verhindern
For Tage = 3 To 33 'über alle Tage in Zeilen 3 bis 33
Auswertung = Array(0, 0, 0, 0, 0, 0) 'Alle 5 Farben werden angezeigt
For Monate = 4 To 48 Step 4 'über alle Monate in Spalten 4 bis 48 in 4er Schritten
Farbwert = Worksheets("Kalender").Cells(Tage, Monate).Interior.ColorIndex
Summiere_Farbe Farbwert
Next Monate
For Monate = 51 To 51 'Auswertung in die Spalte 51 (AY) eintragen
Worksheets("Kalender").Cells(Tage, Monate).Value = Auswertung(Tage - 2)
Next Monate
Next Tage
Application.ScreenUpdating = True 'Bildschirmaktualisierung wieder einschalten
Cells(merker_row, merker_col).Activate 'gemerkte Position wieder aktivieren
End Sub
Public Function Summiere_Farbe(Farbwert As Integer)
Select Case Farbwert
Case 8 'türkis=Urlaub
Auswertung(1) = Auswertung(1) + 1
Case 4 'grelles grün=Gleittag
Auswertung(2) = Auswertung(2) + 1
Case 48 'grau-40%=Resturlaub Vorjahr
Auswertung(3) = Auswertung(3) + 1
Case 6 'gelb=Urlaub?
Auswertung(4) = Auswertung(4) + 1
Case 22 'Pink=Feiertage
Auswertung(5) = Auswertung(5) + 1
Case Else
End Select
End Function
-------------------------------------------------------------------------------------------------------------------------------------------------
Ich möchte gerne in einem Kalender von allen Zeilen jede vierte Zeile untersuchen und jedes markierte Feld seiner Farbe zuordnen, und diese zusammenzählen. Es gibt 5 verschiedene Farben. Das momentane Programm funktioniert sehr gut für die erste Zeile, allerdings zählt er nicht weiter durch, sodass nur die erste Zeile ausgewertet wird und aufgeschrieben wird.
Vll hat einer von euch eine Idee. Ich habe schon einige Zeit investiert und nichts passendes gefunden.
Danke schonmal und LG
|