Einem String eine Zahl zuweisen
Hallo in die Runde,
Ich habe Strings in zwei Spalten, so wie "B", "B+", "A", "A+" usw. Ich muss ihnen eine Zahl zuweisen und dann das Gesamtranking ausrechnen, z. B.
Rating 1: "A" = 7
Rating 2: "A+" = 8
"Ranking" = (7 + 8) / 2
Ich habe versucht das mit folgendem Code zu erreichen:
let x:=0
if 'Rating 1'='A' then
x:=7;
if 'Rating 1'='A+' then
x:=7.5;let z:=0
if 'Rating 2'='A' then
z:=7;
if 'Rating 2'='A+' then
z:=7.5;
end;
Ranking:=(x + z) / 2
Ich glaube, man sieht gleich, dass hier etwas nicht stimmt, aber was, weiß ich nicht.
Hinzu kommt, dass Ninox gleich einen Fehler meldet, da "A+ " nicht gefunden wurde.
Was soll ich tun?
10 Antworten
-
'Rating 1' ist ein Textfeld? Dann muss der Inhalt in doppelten Anführungszeichen stehen...
-
Vielleicht löst schon dein Problem.
Mich interessiert einfach vermutlich überflüssigerweise aus Neugier zum Verständnis der Situation, die ich wieder mal nicht verstehe:
- Liegen die Strings fix vor in deiner Tabelle? Oder trägst du die Datensatz für Datensatz ein?
- Wieviele Strings gibt es insgesamt? 10? 1000? Dynamisch? (so dass neue Strings mit neuer zugeordneter Zahl zu erwarten sind)
-
Hallo Denis. Das wird mit if-Abfragen bei noch mehr Ranking umständlich. Vielleicht hilft Dir eine switch-case-Abfrage wie z.B.
-
Moin,
ich würde das vermutlich über eine Hilfstabelle angehen, in der ich jedem Rating einen Wert zuordne.
Dann könnte
1) das Rating über ein Dropdown-Menü ausgewählt werden und
2) der Zahlenwart sehr einfach ermittelt werden.
VG
Content aside
- vor 1 JahrWed, August 2, 2023 at 1:43 PM UTCZuletzt aktiv
- 10Antworten
- 104Ansichten
-
5
Folge bereits