Hallo Ralf,
das stimmt, ich hätte direkt den kompletten Code reinstellen sollen. Hier kommt er jetzt:
'Berechnung der Arbeitszeiten aus dem Monat mo
Sub monat(ByVal mo As Integer)
Dim m, z1, z2, i, j As Integer
Therapeut = ComboBox1.Text
Tabelle2.Cells(2, 1) = "": 'Name Löschen
Tabelle2.Range("D5:T28") = "": 'Auswertung "oben" löschen
Tabelle7.Range("A1:D200") = "": 'Tabelle Datum löschen
Tabelle2.Cells(2, 1) = Mitarbeiter 'Schreibt den Namen des Mitarbeiters in Zelle A2
For i = 1 To Tabelle4.Cells(Rows.Count, "H").End(xlUp).Row
m = Val(Mid(Tabelle4.Cells(i, 2), 4, 2))
Status = Tabelle4.Cells(i, 9)
Kategorie = Tabelle4.Cells(i, 10)
If Kategorie = "Intern" Then z1 = 2 * mo + 3
If Kategorie = "Extern" Then z1 = 2 * mo + 4
Rem If i = 386 Then Stop
' z1= Zeile für Monat mo
' Untersuche alle Zeilen der Exportdatei nach folgenden Kriterien und reagiere dementsprechend
If Tabelle4.Cells(i, 8) = Mitarbeiter And m = mo Then
Rem Stop
Rem If i = 386 Then Stop
'Mitarbeiter hat seine Arbeit ausgeführt
If Status = "beendet" Then Tabelle2.Cells(z1, 4) = Tabelle4.Cells(i, 5) + Tabelle2.Cells(z1, 4)
'Urlaubstage ausgeben
If Status = "Urlaub (MA)" Then Tabelle2.Cells(z1, 8) = Tabelle2.Cells(z1, 8) + 1
'Urlaubstage (Datum) ausgeben
If Status = "Urlaub (MA)" Then Tabelle7.Cells(z1, 1) = Tabelle4.Cells(i, 2)
'Krankheitstage ausgeben
If Status = "Krank (MA)" Then Tabelle2.Cells(z1, 9) = Tabelle2.Cells(z1, 9) + 1
'Krankheitstage aufs Kind ausgeben
If Status = "Krank (Kind)" Then Tabelle2.Cells(z1, 20) = Tabelle2.Cells(z1, 20) + 1
'Fortbildungstage ausgeben
If Status = "Fortbildung (MA)" Then Tabelle2.Cells(z1, 10) = Tabelle2.Cells(z1, 10) + 1
'Fehlerhafte Eingabe (Noch nicht erschienen)
If Status = "Noch nicht erschienen" Then Tabelle2.Cells(z1, 12) = Tabelle4.Cells(i, 5) + Tabelle2.Cells(z1, 12)
'Teamsitzung ausgeben
If Status = "Teamsitzung" Then Tabelle2.Cells(z1, 19) = Tabelle4.Cells(i, 5) + Tabelle2.Cells(z1, 19)
'Externer Auftrag und KM-Angaben ausgeben
If Status = "beendet" And Tabelle4.Cells(i, 13) > 0 Then
'Externer Auftrag Anzahl ausgeben
Tabelle2.Cells(z1, 15) = Tabelle2.Cells(z1, 15) + 1
'Externer Auftrag KM-Angaben ausgeben
'Tabelle2.Cells(z1, 17) = Tabelle4.Cells(i, 13) + Tabelle2.Cells(z1, 17)
Rem Stop
End If
End If
Next i
End Sub
Vielleicht ist es jetzt so verständlicher.
Gruß
Sandra
|