Yahoo Clever wird am 4. Mai 2021 (Eastern Time, Zeitzone US-Ostküste) eingestellt. Ab dem 20. April 2021 (Eastern Time) ist die Website von Yahoo Clever nur noch im reinen Lesemodus verfügbar. Andere Yahoo Produkte oder Dienste oder Ihr Yahoo Account sind von diesen Änderungen nicht betroffen. Auf dieser Hilfeseite finden Sie weitere Informationen zur Einstellung von Yahoo Clever und dazu, wie Sie Ihre Daten herunterladen.

Visual Basic Excel - "weiter?" soll j und J akzeptieren?

Beispiel:

weiter = InputBox("Möchten Sie eine weitere Berechnung durchführen (j/n)")

Loop Until weiter <> "j"

Dies funktioniert nur wenn man "j" eingibt aber nicht "J". Wir sollen nun herausfinden wie man es so einbaut dass "J" (großes j) auch funktionieren würde. Das soll irgendwie mit einer "while" Abfrage gehen aber ich habe keine Ahnung :(

3 Antworten

Bewertung
  • vor 8 Jahren
    Beste Antwort

    Erst mal für die ja nein Abfrage die Funktion MsgBox . Dort kannst du Text, Titel und Buttons angeben. Die Abfrage ist also eigentlich überflüssig.

    Sei's drum :

    weiter="." ' damit es immer mindestens einen Lauf gibt

    Do While (instr(" ja Ja yes Yes", " " + weiter)=0)

    weiter=InputBox("...")

    Loop

    Diese Abfrage kannst du mit

    j J y Y ja Ja ye Ye yes und Yes beantworten und gehst weiter aber alles andere bleibt in der Schleife. Kannst du beliebig erweitern mit weiteren Begriffen aber das vorgestellte Leerzeichen nicht vergessen.

    Egidius lies mal die Frage Excel und VBA haben die VB 6 Syntax. Da gibt es keine Objekte keine Methoden und Großbuchstaben erhältst du mit UCase() und nicht mit ToUpper(). ToUpper ist .Net Frameworks Syntax.

  • vor 8 Jahren

    Loop Until ucase(weiter) <> "J"

  • vor 8 Jahren

    Es muss eine Funktion geben, die einen Text in Grossbuchstaben umsetzt.

    Die heisst glaube ich ToUpper

    Da kannst Du selbst nachgucken

    http://support.microsoft.com/kb/312897/de

    Also schreibst Du Dein Programm so:

    ...

    weiter = InputBox("Möchten Sie eine weitere Berechnung durchführen (j/n)")

    ....

    Loop Until weiter.ToUpper <> "J"

    ....

    Dann funktioniert die Sache sowohl bei Eingabe von j als auch von J.

Haben Sie noch Fragen? Jetzt beantworten lassen.