28.05.2018, 08:46
Hallo zusammen,
ich habe folgendes Problem:
Ich möchte in einer Liste je nach Wert in Spalte 4 die Betriebsangehörigkeit ermitteltn und je nach Fallunterscheidung soll basierend auf Spalte 49 eine Sonderzulage berechnet werden.
Dabei beginnen die Listeneinträge ab Zeile 5, die Fallunterscheidung soll gestaffelt in Monaten betrachtet werden.
Beim kompilieren bekomme ich folgende Fehlermeldung: "Next ohne For". Hat jemand eine Idee?
Sub Sonderzulage()
Dim Zeile As Long
Dim ZeileMax As Long
Dim Sonderzulage As Double
Dim Betriebszugehörigkeit As Integer
With tbl_Gehaltsdaten
ZeileMax = .Cells(Rows.Count, 2).End(xlUp).Row
For Zeile = 5 To ZeileMax
Betriebszugehörigkeit = DateDiff("m", .Cells(Zeile, 4).Value, Now)
Select Case Betriebszugehörigkeit
Case 0 To 5
Sonderzulage = 0
Case 6 To 11
Sonderzulage = .Cells(Zeile, 49).Value * 25 * 100
Case 12 To 23
Sonderzulage = .Cells(Zeile, 49).Value * 35 * 100
Case 24 To 35
Sonderzulage = .Cells(Zeile, 49).Value * 45 * 100
Case Else
Sonderzulage = .Cells(Zeile, 49).Value * 55 * 100
.Cells(Zeile, 52).Value = Sonderzulage
Next Zeile
End With
End Sub
ich habe folgendes Problem:
Ich möchte in einer Liste je nach Wert in Spalte 4 die Betriebsangehörigkeit ermitteltn und je nach Fallunterscheidung soll basierend auf Spalte 49 eine Sonderzulage berechnet werden.
Dabei beginnen die Listeneinträge ab Zeile 5, die Fallunterscheidung soll gestaffelt in Monaten betrachtet werden.
Beim kompilieren bekomme ich folgende Fehlermeldung: "Next ohne For". Hat jemand eine Idee?
Sub Sonderzulage()
Dim Zeile As Long
Dim ZeileMax As Long
Dim Sonderzulage As Double
Dim Betriebszugehörigkeit As Integer
With tbl_Gehaltsdaten
ZeileMax = .Cells(Rows.Count, 2).End(xlUp).Row
For Zeile = 5 To ZeileMax
Betriebszugehörigkeit = DateDiff("m", .Cells(Zeile, 4).Value, Now)
Select Case Betriebszugehörigkeit
Case 0 To 5
Sonderzulage = 0
Case 6 To 11
Sonderzulage = .Cells(Zeile, 49).Value * 25 * 100
Case 12 To 23
Sonderzulage = .Cells(Zeile, 49).Value * 35 * 100
Case 24 To 35
Sonderzulage = .Cells(Zeile, 49).Value * 45 * 100
Case Else
Sonderzulage = .Cells(Zeile, 49).Value * 55 * 100
.Cells(Zeile, 52).Value = Sonderzulage
Next Zeile
End With
End Sub