Ausführung trotz If-Abfrage

  • VBScript

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von Eierlein.

    Ausführung trotz If-Abfrage

    Hallo!
    Das folgende Script scheint die in der If-Abfrage bestehende Berechnung auch dann durchzuführen, wenn die Bedingung nicht erfüllt ist
    -------

    vargeburtsjahr = Inputbox("Geben Sie bitte ihr Geburtsjahr ein!", "In welchem Jahr wurden Sie geboren?")vargeburtsmonat = Inputbox("Geburtsmonat?", "Monat?")vartaggeburt = Inputbox("Tag?", "An welchen Tag wurden Sie geboren?") 'Altersbestimmung vardatum = Now() varjahr = Year(vardatum) varmonat = Month(vardatum) vartag = Day(vardatum) varalter = varjahr - vargeburtsjahr IF varmonat < vargeburtsmonat THEN varalter=varalter-1END IF MsgBox varalter

    ----
    Der Sinn des Scripts muss jetzt nicht unbedingt diskutiert werden... aber kann mir Jemand sagen, woran das liegt / liegen könnte?
    Und falls noch jemand so lieb ist mir zu schreiben, wie ich mehrere Bedingungen abfrage (verschachteltw IFs?) wäre das seeehr toll ^^
    Liebe Grüße Max
    Aua ;(
    Naja, willkommen im Forum!

    Bevor ich iwas sage: Hör auf das gemeine Volk zu vergewaltigen, nimm deinen Code (markieren), und klicke auf einen BBCode (VB 6.0 sollte dem am nächsten kommen), welchen du in der Leiste des Editors findest, rechts. Dann fügst du bitte hinter jede Codezeile ein return ein (ergo ENTER drücken). Danke :thumbsup:

    Nun zum Code:
    Dein Code funktioniert, wenn du die Variablen, mit denen du rechnest, in Zahlen (integer) wandelst:

    Visual Basic-Quellcode

    1. vargeburtsjahr = Inputbox("Geben Sie bitte ihr Geburtsjahr ein!", "In welchem Jahr wurden Sie geboren?")
    2. vargeburtsmonat = Inputbox("Geburtsmonat?", "Monat?")
    3. vartaggeburt = Inputbox("Tag?", "An welchen Tag wurden Sie geboren?") 'Altersbestimmung
    4. vardatum = Now()
    5. varjahr = Year(vardatum)
    6. varmonat = Month(vardatum)
    7. vartag = Day(vardatum)
    8. varalter = varjahr - CInt(vargeburtsjahr)
    9. If varmonat < CInt(vargeburtsmonat) THEN
    10. varalter=varalter-1
    11. End If
    12. MsgBox vargeburtsjahr & "-" & vargeburtsmonat & "-" & vartaggeburt & vbCrLf & varjahr & "-" & varmonat & "-" & vartag & vbCrLf & varalter


    Und zu mehreren Ifs:
    Bemühe Google - "VBScript if statement" --> DAS
    »There's no need to "teach" atheism. It's the natural result of education without indoctrination.« — Ricky Gervais

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „ThePlexian“ ()

    Falls die Abfrage noch nicht bei dir geklappt hat, hier ein Beispiel. (Andere Werte bzw. Variablen benutzt!)

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim alter As Integer
    3. Dim Jahr As Integer = Now.Year
    4. Dim Geburtsjahr As Integer
    5. Public Sub test()
    6. alter = 14
    7. Geburtsjahr = 2000
    8. End Sub
    9. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    10. test()
    11. If Jahr - Geburtsjahr = alter Then
    12. TextBox1.Text = "True"
    13. Else
    14. TextBox1.Text = "False"
    15. End If
    16. End Sub
    17. End Class
    Es existiert ein Interesse an der generellen Rezession der Applikation relativ primitiver Methoden komplimentär zur Favorisierung adäquater komplexer Algorithmen.
    ------------------------------------------------------------------------------------
    Rising Existence - das GTA V-MP Projekt mit Zukunft und Innuvation

    Gonger96 schrieb:

    1. Programmiert man in englisch


    Nö. Meine Variablen sind auch oft in Deutsch. Nur Umlaute vermeide ich, da die unterschiedlichen Codepages sonst Ärger machen können. Ansonsten programmiere ich auch die GUIs in Deutsch. Wird sogar von Franzosen genutzt, wie ich durch Rückfragen erfahren habe. Wo ein Wille ist... :)
    Gruß
    Peterfido

    Keine Unterstützung per PN!
    @Gonger96 du bist absolut OT mit deinem Geschwafel...

    Außerdem, gibt es keine Regel in der Programmierung, dass alles Englisch sein muss.
    Wenn ich meine Variablen number01, number02, number03 und numberXX nenne, dann sind sie Englisch. Verstehst du deswegen jetzt was z.B. number03 ist?

    -> Es ist jedem Programmierer selbst überlassen in welcher Sprache er seine Bezeichnungen wählt, solange er nur Zeichen verwendet die für diesen Zweck vorgesehen sind!
    Wenn ich auf Deutsch programmieren möchte muss ich es halt hinnehmen, das ein anders Sprachiger es nicht versteht.
    Ich Antworte nach bestem Wissen und Gewissen. Ich übernehme keine Garantie für die Richtigkeit oder Fehlerfreiheit meiner Texte.


    Ich konnte dir helfen?
    - Das ist schön :) Ich würde mich über ein "Hilfreich" freuen ^^