Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

[VBA] Select Case
#1
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
Antworten Top
#2
Hallo,

du musst die Select-Anweisung noch abschließen, also vor dem 

Code:
.Cells(Zeile, 52).Value = Sonderzulage
Next Zeile

noch ein End Select
Schöne Grüße
Berni
Antworten Top
#3
Hallo,

die Frage hattest Du schon gestellt.
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#4
Was soll das denn?  :@
Schöne Grüße
Berni
Antworten Top
#5
Shocked 
Hallo,

da hatte ich wohl die Benachrichtigung aus und dachte, das Thema sei untergegangen.

Danke trotzdem, kommt nicht wieder vor
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste