So, ich habe einmal als kleine Fingerübung - und für Dich als Anregung - die Bewertung nach Schule (jede Schule nur einmal) eingebaut.
Wichtig zu wissen:
1.
In "C" sind als Vorgabeantwort sämtliche Schulen gespeichert in der Form
A03Das ist der Schulname x
Das "x" deutet an, das jede Zeile 50 Zeichen lang ist.
2.
Alle Codes der Schulen sind dreistellig, also "A01", "A02", "A12"
3. Gruppe GCalc1:
Zunächst werden die Anzahlen der Esser und Nichtesser berechnet.
Dann startet die etwas lange, aber simple Bestimmung der Schulen.
Zunächst werden mit einem simplen "join" und "if" die Schulcodes aneinandergereiht, die einen "Esser" beschulen.
Jetzt geht es los:
a. Nimm die ersten drei Stellen, die erste Schule: substr()
b. Ersetze im "gejointen" String jeden dieser Texte durch "".
c. Und so geht es weiter.
4. AF1 - AF3
Hier habe ich einmal ein bisschen mit verschachtelten IFs gearbeitet, um ein "schönes" Deutsch zu erzielen.
5. AF22
Auch ein bisschen Spielerei, aber man soll die Versuchspersonen führen
6. In AF23 geht es dann los mit der Bewertung der Verpflegung pro Schule
Hier kommt jetzt endlich die anfängliche Schulliste "C" zum Tragen
Mit der Funktion
{trim(substr(C,strpos(C,eqS1)+3,47))}
gucken wir zuerst, wo in C der Schulcode (eqS1) ist, gehen dann drei Stellen weiter und nehmen den Teilstring von dort aus, 47 Stellen lang.
Dann wird er "getrimmt", also die Leerstellen entfernt.
Dies wird dann für die weiteren Schulen durchgeführt, so lange bis einer davon eqS2, eqS3, eqS4,... leer ist.
Das ist eben die Lösung ohne javascript, sieht daher etwas umständlich aus, ist aber im Grunde klar und übersichtlich (es wird ja immer nur dieselbe Routine ausgeführt).
Einfach mal angucken, und Nektar heraussaugen.
Joffm