0

Mehrfachauswahl in If Bedingung funktioniert nicht.

Ich habe eine Mehrfachauswahl bei der die ersten beiden Werte Zahlen sind und der dritte Wert ein Wort.

Wenn ich nun eine Bedingung stelle:

If Mehrfachauswahl = 1 then "Rette die Welt!"

funktioniert alles.

Wenn ich in der Bedingung aber nur den dritten Wert (das Wort) habe, klappt gar nichts:

If Mehrfachauswahl = "Wort" then "Hallo?"

Vielleicht hat ja jemand einen Tip was da falsch ist...

4 Antworten

null
    • Tacho
    • vor 2 Jahren
    • Gemeldet - anzeigen

    versuch's mal mit:

    if text(Mehrfachauswahl) = "Wort" then "Hallo?"

    • bastianholzheimer_gmail
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Es geht! Vielen Dank. In welchem Variablenformat spuckt denn die Mehrfachauswahl die Werte sonst aus? Ich dachte das wäre individuell je nachdem was in jeder Zeile steht. Wenn man nur eine einfache Auswahl hat, hat man dieses Problem komischer Weise nicht. Da wird immer nur die Zeile mit der Nummer benannt.

    Ich habe dies für einen Code innerhalb einer Druckansicht benutzt, das automatisch den Text des Vertrages den Werten anpasst.

    • Ninox-Professional
    • planoxpro
    • vor 2 Jahren
    • Gemeldet - anzeigen

    'N Abend, die Abfrage mit text() gibt lediglich die Bezeichnung des gewählten Eintrags als String zurück, also z. B. "Wort". Bei einer Mehrfachauswahl funktioniert das nicht, zumindest dann nicht, wenn tatsächlich mehrere Einträge ausgewählt wurden. Dafür gibt es die Funktion chosen().

     

    Will man also ein Mehrfachauswahlfeld darauf abfragen, ob der Eintrag mit der Bezeichnung "Wort" ausgewählt wurde, dann lautet der Code:

     

    if chosen(Mehrfachauswahl, "Wort") then ...

     

    Oder, wenn "Wort" in der Liste die Nummer 3 hat:

     

    if chosen(Mehrfachauswahl, 3) then ...

     

    Bei einem einfachen Auswahlfeld würde die gleiche Abfrage so lauten:

     

    if text(Einfachauswahl) = "Wort" then ...

     

    Bzw.

     

    if number(Einfachauswahl) = 3 then ...

     

    Wobei man das number() auch weglassen kann, weil Ninox als Standardimmer den numerischen Wert zurückgibt, wenn nichts anderes angegeben wird. Die Abfrage

     

    if Einfachauswahl = 3

     

    würde also auch funktionieren.

    • bastianholzheimer_gmail
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Danke für die ausfühliche Erklärung! Das ist jetzt nachvollziehbar.

Content aside

  • vor 2 JahrenZuletzt aktiv
  • 4Antworten
  • 244Ansichten
  • 1 Folge bereits