VBA "mit ein bisschen Excel" Temperatur Umrechner °C in °F und zurück Fehler "Typen Unverträglich"?

...komplette Frage anzeigen

2 Antworten

Habs jetzt nicht durchgetestet aber du musst normalerweise

If strWahl = "Celsius" Or strWahl="celsius" Then

also deine Variable jedesmal abfragen nicht einfach

If strWahl = "Celsius" Or "celsius" Then

bei den unteren If genauso

Funktioniert jetzt :) Dank dir :D hier nochmal der Code falls jemand später die gleiche Frage und hier landet hat zum kopieren :P

Option Explicit

Private Sub CommandButton1_Click()

Dim dZahl1 As Double
Dim dZahl2 As Double
Dim strWahl As String

strWahl = InputBox("Bitte geben sie an in welcher der beiden Zellen sie einen Wert geschrieben haben(Celsius oder Fahrenheit)", "Umrechner")



    If strWahl = "Celsius" Or strWahl = "celsius" Then

        dZahl1 = Cells(12, 2)

        dZahl2 = ((dZahl1 * 9) / 5) + 32

        Cells(12, 6) = dZahl2




    If strWahl = "Fahrenheit" Or strWahl = "fahrenheit" Then

        dZahl1 = Cells(12, 6)

        dZahl2 = ((dZahl1 - 32) / 9) * 5

        Cells(12, 2) = dZahl2




    If strWahl <> "Celsius" Or strWahl <> "celsius" Or strWahl <> "Fahrenheit" Or strWahl <> "fahrenheit" Then

        MsgBox "Eingabe konnte nicht verarbeitet werden. Versuchen sie es Nochmal", , "Fehler!"

    End If
    End If
    End If

End Sub
0
@swfan6

Der Code hat 2 einen Fehler die if abfrage ist falsch gesetzt daruch überspringt er die fahrenheit und in der letzten if abfrage kommst statt or ein and^^.. damit die bescheid Wissen die das vielleicht noch Lesen :)

0

mal abgesehen davon, dass das doch sehr umständlich und fehleranfällig ist.

du zwingst den user dazu, genau "Fahrenheit", "fahrenheit", "Celsius" oder "celsius" einzugeben.

viel einfacher wäre es, eine maske zu bauen mit einem eingabefeld (für den wert), einem ausgabefeld und z.b. einem radiobuttonverband oder zwei buttons, welche die umrechnung in das eine oder andere format vornimmt.

bedenke: dein programm ist absolut nicht fehlertolerant. vertippt sich der user (z.b. "Clesius" statt "Celsius") funktioniert nix mehr.

:)

Was möchtest Du wissen?