Seite 1 von 2

Richtige Formel in Zelle automatisch bepunkten?

Verfasst: 01.02.2015 13:24
von Borcas
Hallo, liebe Forenmitglieder!

Habe heute mal eine Frage zu Excel.

Würde gerne eine Übungsaufgabe für meine Schüler erstellen, die sich automatisch selbst bepunktet, so dass die Schüler gleich sehen, ob sie die Aufgaben richtig gelöst haben. In den meisten Fällen ist eine Wenn-Funktion hier sehr hilfreich. Also "=wenn(A1=285;1;0)" ist ja noch kein Thema. Blöd wird es aber, wenn ich nicht das Ergebnis bepunkten will, sondern der Schüler nur dann einen Punkt erhalten soll, wenn er auch die richtige Formel verwendet hat. Es muss also nicht das Ergebnis, sondern der Inhalt der Formel ausgewertet werden.

Angenommen das Ergebnis der Summe der Zellen A1 bis D1 ergibt 35 und der Schüler schreibt per Hand die 35 in die Zelle, soll dies 0 Punkte geben. Den Punkt soll er nur dann erhalten, wenn er dort tatsächlich die Formel =summe(A1:D1) stehen hat. Auch keine Punkte soll es für andere Summenlösungen wie =A1+B1+C1+D1 geben, um den Schüler zu schulen, die jeweils optimale Formel zu verwenden. Eine allgemeine Abfrage, ob sich in der Zelle überhaupt eine Formel befindet, hilft mir also ebenfalls nicht weiter.

Wie ist es also möglich, dem Programm zu sagen, dass die Abfrage genau DIESE Formel betrifft?

Anmerkung:
Mit Gänsefüßchen lassen sich andere Einträge so verknüpfen, dass der Inhaltstext zur Wenn-Dann-Überprüfung herangezogen wird. Also beispielsweise =wenn(A4="A1+B1";.... Hier wird dann nicht das Ergebnis von A1+B1 herangezogen, sondern es muss in der Zelle A4 tatsächlich der Text A1+B1 stehen. Dies funktioniert aber nur mit Textinhalten und leider nicht mit Formeln! =wenn(A4="=summe... klappt also leider nicht.

Für alle Anregungen und Lösungsansätze bin ich sehr dankbar!

Liebe Grüße

Carsten

Re: Richtige Formel in Zelle automatisch bepunkten?

Verfasst: 01.02.2015 21:00
von Sabine
Grüß dich Carsten,

interessantes Problem. Hab mal etwas rumprobiert. So könnte es gehen. Die "Lösungsspalte" müsste man dann halt ausblenden, oder Schriftfarbe weiß nehmen.

Liebe Grüße, Sabine

Re: Richtige Formel in Zelle automatisch bepunkten?

Verfasst: 01.02.2015 21:36
von Borcas
Hi Sabine,

das hat jetzt aber das Grundproblem nicht gelöst. Du hast jetzt quasi in der Zelle neben der eingegebenen Formel nochmals die Formel als eingeblendete Formel dargestellt. Dann funktioniert es. Aber wenn die Schüler eine ganz normale Berechnung durchführen, tippen sie ja nicht die Formel daneben nochmals mit eingeblendetem Formeltext ein.

Was ich gerne hätte, wäre eben, die Zelle A7 in deinem Beispiel direkt auf die richtige Formel ausgewertet. Heißt:
Die Schüler berechnen ganz normal ihre Tabelle UND erhalten dafür einen Punkt.

Dass es da keine Lösung geben soll, kann ich mir nicht vorstellen...

Re: Richtige Formel in Zelle automatisch bepunkten?

Verfasst: 02.02.2015 10:15
von Sabine
Hallo Carsten,

stimmt, zu früh gefreut. Und wenn du die Lösungszelle als Text formatierst?

Re: Richtige Formel in Zelle automatisch bepunkten?

Verfasst: 02.02.2015 12:44
von Bernhard
Ich habe online eine mögliche Lösung gefunden:
http://www.excel-inside.de/vba-loesunge ... elle-steht
Das Problem ist, dass die Punkte dann links von der Formel stehen. Dies könnte man evtl. dadurch umgehen, dass man den Inhalt dieser Spalte weiter rechts noch einmal anzeigen lässt und die linke Spalte ausblendet.

Bei der Lösung überprüfst du im ersten Schritt nur, ob überhaupt eine Formel verwendet wurde. Falls nicht gibts eine Fehlermeldung. Wenn ja, dann wird das Ergebnis mit einer weiteren (geschachtelten) wenn-funktion überprüft.

Re: Richtige Formel in Zelle automatisch bepunkten?

Verfasst: 02.02.2015 14:33
von Borcas
@Sabine: Dann hat sich an der Thematik nur geändert, dass du nur auf die zusätzliche Zelle verzichtet hast, aber die Formel trotzdem als Formeltext eingeblendet ist. Wenn es sich um ein bepunktetes Zwischenergebnis handelt, kann ich ab der Stelle nicht mehr weiterarbeiten... Will ich eine Probearbeit schreiben, in der die Schüler mir nur die richtige Formel nennen sollen, wäre dies verwendbar. Aber eben nicht, wenn mit der Tabelle wirklich gerechnet werden soll.

@Bernhard: Das löst das Problem leider auch nicht, da hier ja nur abgefragt wird, ob ÜBERHAUPT eine Formel verwendet wurde. Soll der Schüler die optimierte Summenformel verwenden, würde hier aber auch eine normale Addition Punkte hergeben.

... und noch immer keine Lösung in Sicht ... :)

Re: Richtige Formel in Zelle automatisch bepunkten?

Verfasst: 02.02.2015 17:58
von Bernhard

Re: Richtige Formel in Zelle automatisch bepunkten?

Verfasst: 02.02.2015 19:59
von Borcas
Sorry,... aber bin gerade komplett überfordert... Verstehe weder den ersten Link (wie kann ich in die Zelle B1 gleichzeitig =Formel und =ZELLE.ZUORDNEN(6;Tabelle1!A1) schreiben???

Und das mit dem VBA kapier' ich schon überhaupt nicht... Hab' ich noch nie gebraucht/gemacht.

Kapier' aber im Allgemeinen immer noch nicht, wie es möglich sein kann, dass es keine Möglichkeit gibt, nicht das Zellergebnis als Option in einer Wenn-Dann-Verknüpfung zu verwenden, sondern die eigentliche Zellinformation... Könnte schwören, dass es dafür eine ganz einfach Möglichkeit gibt, komme aber nicht drauf.

Re: Richtige Formel in Zelle automatisch bepunkten?

Verfasst: 02.02.2015 20:11
von Bernhard
Wenn du den VBA-Code der Datei hinzufügst, dann bekommst du einen zusätzlichen Befehl "zellinfo" der durch diesen Code eingebaut wird. Mit Hilfe dieses Befehls kannst du die Formel überprüfen.

Der Befehl in der Zelle B5 um den Inhalt von B4 zu überprüfen wäre dann:

Code: Alles auswählen

=wenn(zellinfo(B4;3)="vergleichsformel-richtiges-ergebnis";1;0)

Re: Richtige Formel in Zelle automatisch bepunkten?

Verfasst: 02.02.2015 22:41
von StrKuck
Ich habe mal ein wenig probiert: Folgendes müsste gehen.

Ich habe in Zelle a1 die Formel "=a2" eingetragen. Mit der unteren Formel frage ich ab, ob die Formel in Zelle a1 gleich dem entspricht, was in der unteren Formel in Anführungszeichen eingetragen wurde. Wenn ja, dann soll eine 1 dort stehe, wenn nein, dann steht dort eine 0.

=WENN(FORMELTEXT(A1)="=a2";1;0)

Ich hoffe, das hilft weiter :)

Re: Richtige Formel in Zelle automatisch bepunkten?

Verfasst: 03.02.2015 10:58
von Borcas
@Bernhard: Nochmal: Ich habe von VBA keine Ahnung. Wie füge ich der Datei einen VBA-Code hinzu? Und wenn ich die Richtigkeit überprüfen muss, ist das, was ich eigentlich will, ja auch nicht gelöst. Die Zelle mit der Bepunktung soll in dem Moment, wo der Schüler eine Formel einsetzt, sofort die erreichte Punktzahl anzeigen. Es geht nicht darum, eine andere Lösung für das Problem zu finden. Im Endeffekt will ich eine ganz normale Wenn-Dann-Formel. Diese würde ja zur Bepunktung für aller anderen Einträge wunderbar funktionieren. Es geht nur darum, wie ich die Zelle so verknüpfen kann, dass in der Wenn-Dann-Formel nicht das Ergebnis, sondern die Formel verwendet wird. Also ein Lösungsansatz, wie ihn StrKuck hier unter deinem Beitrag eingegeben hat. Nur leider...

@StrKuck: Äh... funktioniert bei mir nicht... dann zeigt's mir in A2 "#Name?" an.

Re: Richtige Formel in Zelle automatisch bepunkten?

Verfasst: 03.02.2015 12:34
von StrKuck
Es funktioniert offenbar erst ab Excel 2013. Wenn du die Version haben solltest, dann kopiere doch einfach mal die Formel hier raus und trage sie z.B. in Zelle a2 ein.

=WENN(FORMELTEXT(A1)="=SUMME(A1:D1)";1;0)

Füge in Zelle A1 die Formel =SUMME(A1:D1) ein.

Ansonsten wüsste ich nicht, wo nun der Fehler liegen könnte.

Re: Richtige Formel in Zelle automatisch bepunkten?

Verfasst: 03.02.2015 13:32
von StrKuck
Sooo, jetzt nochmal die Verknüpfung von Sabines Lösung und Bernhards Vorschlag mit Zelle.zuordnen.

Hast du einer Zelle schon mal einen Namen gegeben? Jeder Zelle kann ein Name zugeordnet werden. Dazu öffnet man den Namensmanager, indem man auf das Menü "Formeln" in Excel klickt. Dort den Namensmanager anwählen und im dann erscheinenden Fenster oben links auf "neu" klicken. Dann erscheint ein neues Fenster. Dort gibt man im Bereich "Name" z.B. den Namen "Formel" ohne Gänsefüßchen ein. Ganz unten in dem Fenster ist der Bereich "bezieht sich auf". Dort gibt man die folgende Formel ein:

=ZELLE.ZUORDNEN(6;Tabelle1!$E$2)

Der Bezug ist in diesem Beispiel auf Zelle E2 hergestellt worden. Nun gibt man in Zelle E2 seine gewünschte Formel ein, z.B. =summe(A1:D1). In Zelle F2 gibt man dann "=Formel" ohne Gänsefüßchen ein, da man der Zelle E2 ja den Namen "Formel" gegeben hat. Jetzt müsste in Zelle F2 genau die Formel als Text auftauchen, die in Zelle E2 geschrieben wurde. Und schließlich kann jetzt mit einer ganz normalen wenn Funktion für Zelle F2 abgefragt werden, ob die Formel stimmt und ob es Punkte geben soll.
In Zelle G2 steht z.B.:

=wenn(F2="=summe(A1:D1)";1;0)

Re: Richtige Formel in Zelle automatisch bepunkten?

Verfasst: 03.02.2015 17:57
von Borcas
Hurra! So funktioniert's!!!

Das nenn' ich doch mal kompetente Hilfe! Bin zwar bisher trotzdem davon ausgegangen, dass man das in der Wenn-Formel irgendwie einfacher verwurschteln kann, aber so isses doch zumindest mal eine Lösung!

Habe gerade auch ausprobiert, dass der ganze Spaß dann auch in anderen Tabellenseiten funktioniert. Bedeutet, ich könnte rein theoretisch sogar Proben auf diese Weise automatisch benoten lassen! Juhu! Wieder ne Vereinfachung!

Re: Richtige Formel in Zelle automatisch bepunkten?

Verfasst: 03.02.2015 17:59
von Borcas
Bedeutet aber auch, ich muss dann für jede Zelle, die ich bepunkten will, einen eigenen Namen vergeben und die zugehörige Funktion einprogrammieren, oder?

Ganz schön aufwendig! Aber zumindest klappt es auf diese Weise!