Option Explicit
Sub provisionMitLoopUntil()
' Programm berechnet Provisionen abhängig
' vom Umsatz
' Dateiname: provisionMitLoopUntil
Dim umsatz
Dim verkaufsbetrag
Dim provisionInProzent As Double
Dim auszuzahlendeProvision As Double
Dim eingabe As String
' Umsatzgrenzen sind DM-Betraege
Const umsatzGrenze1 As Double = 100000
Const umsatzGrenze2 As Double = 500000
Const umsatzGrenze3 As Double = 1000000
' Provisionen in Prozent
Const provisionUmsatzGrenze1 As Double = 5
Const provisionUmsatzGrenze2 As Double = 10
Const provisionUmsatzGrenze3 As Double = 20
' Gib Programmbeschreibung aus
MsgBox ("Geben Sie Umsatz und Verkaufsbetrag ein!" _
        & Chr$(13) & "Das Programm berechnet die" _
        & " Provision des Vermittlers! Sie beenden das" _
        & " Programm durch die Eingabe von: beenden!")
' Lies Umsatz ein
eingabe = InputBox("Geben Sie nun den Umsatz des Kunden ein!")
Do
    
' Lies und ueberpruefe die Benutzereingaben
    If Not IsNumeric(eingabe) Then
        MsgBox ("Umsatz muß eine Zahl sein!")
        
Exit Sub
    
End If
    
    umsatz = 
CDbl(eingabe)
    eingabe = InputBox("Geben Sie nun den Verkaufsbetrag ein!")
    
    
If Not IsNumeric(eingabe) Then
        MsgBox ("Verkaufsbetrag muß eine Zahl sein!")
        
Exit Sub
    
End If
    
    verkaufsbetrag = 
CDbl(eingabe)
    
    
If verkaufsbetrag > umsatz Then
        MsgBox ("Umsatz muß größer gleich Verkaufsbetrag sein!")
        
Exit Sub
    
End If
    
    
' bestimme Provision
    If umsatz >= umsatzGrenze3 Then
            provisionInProzent = provisionUmsatzGrenze3
        
ElseIf umsatz >= umsatzGrenze2 Then
            provisionInProzent = provisionUmsatzGrenze2
        
ElseIf umsatz >= umsatzGrenze1 Then
            provisionInProzent = provisionUmsatzGrenze1
        
Else
            provisionInProzent = 0
    
End If
    
    
' Berechne die Provision
    auszuzahlendeProvision = (verkaufsbetrag * provisionInProzent) / 100
    
' Gib das Ergebnis aus
    MsgBox ("Die Provision für dieses Geschäft ist: " _
            & auszuzahlendeProvision & " DM")
    
' Lies Umsatz ein
    eingabe = InputBox("Geben Sie nun den Umsatz des Kunden ein!")
Loop Until eingabe = "beenden"
End Sub