Der angehängte Code wird auf VBA ausgeführt, aber ich verstehe nicht, warum es einen Fehler gibt, sagt sonst ohne wenn oder wenn ohne Ende wenn. Ich bin mir ziemlich sicher, dass ich jedes Ende erreicht habe, wenn ich mit if aussage.EXCEL VBA benutzerdefinierte Funktion - sonst ohne wenn
Sub teee() dient nur zum Testen der Dezimalisierungsfunktion. Es wäre sehr wichtig, den Code zu überprüfen und mir mitzuteilen, was mit meinem Code nicht stimmt ... Ich bin fast fertig, um ein Projekt abzuschließen, wenn ich diese Funktion beheben kann.
Sub teee()
sss = "-1-21+"
MsgBox (decimalize(sss))
End Sub
Function decimalize(s As Variant) As Long
Dim checkers As Variant
Dim ab As Long
Dim leftnum As Long
Dim rightnum As Long
Dim poneg As Integer
checkers = s
ab = 0
leftnum = 0
rigntnum = 0
poneg = 0
'Positive payup or negative payup
If Left(checkers, 1) = "-" Then
poneg = 1
lencheckers = Len(checkers)
checkers = Mid(checkers, 2, lencheckers - 1)
Else: poneg = 0
End If
startp = InStr(checkers, "-")
If startp = 2 Then leftnum = Left(checkers, 1)
ElseIf startp = 3 Then leftnum = Left(checkers, 2)
ElseIf startp = 4 Then leftnum = Left(checkers, 3)
End If
rightnum = Mid(checkers, startp + 1, 2)
If InStr(checkers, "+") > 0 Then
ab = 0.5
ElseIf InStr(checkers, "1/4") > 0 Then
ab = 0.25
ElseIf InStr(checkers, "1/8") > 0 Then
ab = 0.125
End If
rightnum = rightnum + ab
If poneg = 0 Then
decimalize = rightnum + leftnum * 32
ElseIf poneg = 1 Then
decimalize = (rightnum + leftnum * 32) * -1
End If
End Function
Vielen Dank im Voraus
Sehr geschätzt, Vityata, Ihre Lösung hat perfekt funktioniert! –
Gut zu wissen, +1 Karma für den heutigen Tag :) Wenn Sie möchten, können Sie die Antwort auswählen, indem Sie auf die linke grüne Markierung wie folgt klicken: http://meta.stackexchange.com/questions/5234/how-does-accepting- an-answer-work – Vityata