267 Aufrufe
Gefragt in Skripte(PHP,ASP,Perl...) von
Hallo zusammen,

vorab kurz, um was es geht, dann ausführlicher für die, die weiterlesen wollen ;-)

Ich benötige eine Lösung für ein Formularfeld, bei der das Feld nach Eingabe nach eines genau definierten Wortes seine Farbe ändert (grün).

Nun kurz, warum ich hier bin und eure Hilfe benötige. Ich bin Lehrerin an einer Schule für Kinder mit motorischen und geistigen Einschränkungen. Meine Schülerschaft ist sehr unterschiedlich und es kann sein, dass ich in einem Jahr Schüler habe, die nicht lesen, schreiben, etc. können und im nächsten Jahr sehr leistungsstarke Kinder.

Vor ein paar Jahren hatte ich einen Schüler, der aufgrund seiner körperlichen Einschränkungen nicht von Hand schreiben konnte. Die Bedienung eines Computers war ihm aber möglich. Ich habe damals lange herum getüftelt und es irgendwie geschafft, mit Word ein Formular zu erstellen, bei dem sich die Felder grün färbten, wenn ein bestimmtes Wort eingetragen wurde. So konnte mein Schüler gleich sehen, ob er die richtige Lösung hatte oder nicht. Für meine Schüler ist das sehr wichtig, da sie sowieso schon ständig wegen allem jemand rufen müssen, der etwas für sie tut und so ist es sehr schön, wenn sie nicht auch noch für die Kontrolle von Aufgaben jemand brauche.

Leider habe ich dann ein paar Jahre gehabt, in denen ich meine mir schwer erarbeiteten Kenntnisse nicht mehr brauchte und nun ist im Prinzip alles weg. Dummerweise habe ich einen Mac und die Schüler Windowsrechner, sodass alle Dokumente auf dem Schülerrechner geblieben sind, den es nun leider nicht mehr gibt (damals hatte ich auch noch keine Word-Version auf dem Mac, auf dem ich sowas hätte machen können - bin mir nicht sicher, ob meine jetzige das könnte aber ich arbeite ohnehin auf dem Schülerrechner, dass die Formatierung dann auch garantiert passt...). Sonst könnte ich mir die Makros einfach anschauen, die ich mir zusammengesucht habe.

Meine Frage ist nun also, ob mir jemand helfen kann, dieses Makro zu rekonstruieren.

Zur Verdeutlichung meines Anliegens im aktuellen Fall.

Für den Erstschreibunterricht habe ich ein Arbeitsblatt mit Bildern. Unter diese Bilder soll die Schülerin das passende Wort schreiben. Bild = Mutter, erwartetes Wort im Formularfeld = Mama.

Wenn die Schülerin nun exakt dieses Wort eingibt "Mama", dann soll das Formularfeld grün werden.

Ansonsten passiert nichts.

Ich hoffe, ein Makro-Zauberer unter euch schafft es, mir zu helfen.

Auf dem Schülerlaptop ist Word 2013 drauf. Ich schaffe es auch nur über die Auswahl "Vorversionstools" ein Formularfeld zu generieren, dem ich überhaupt ein Makro zuweisen kann (damals hatte ich nur diese Felder und nicht die ganzen neuen, die jetzt da sind).

Vielen Dank schon mal fürs Lesen bis hierher.

Olga

2 Antworten

0 Punkte
Beantwortet von m-o Profi (22.8k Punkte)
ausgewählt von halfstone
 
Beste Antwort

Hallo Olga,

am einfachsten kannst du das mit einem Textfeld (ActiveX-Steuerelemente) aus den Vorverversionstools lösen.

Wenn du das Feld in das Word-Dokument eingefügt hast, dann klicke auf VisualBasic. In dem sich öffnenden Fenster müsstest du links ein Fenster mit dem Titel Project sehen. Hier steht Normal (Standarddokumentvorlage von WORD) und dein Dokument. Wähle hier unter Microsoft Word Objekte den Punkt ThisDocument aus:

Jetzt solltest du im Hauptfenster ob zwei Drop-Down-Felder sehen.

Hier kannst die Textbox ausählen.

Mit dem folgenden Code wird die Textbox grün, wenn beim Verlassen der Textbox das Wort "Mama" darin steht.

Private Sub TextBox1_LostFocus()
If TextBox1.Value = "Mama" Then
     TextBox1.BackColor = vbGreen
    Else
     TextBox1.BackColor = vbWhite
  End If
End Sub

Steht ein anderes Wort darin oder wird das Wort gelöscht, dann wird die Textbox weiß.
Wenn du fertig bist, achte darauf, dass der Entwurfsmodus ausgeschaltet ist.

Gruß

M.O.

0 Punkte
Beantwortet von
Großartig.

Vielen Dank M.O. für die Hilfe und das noch so schnell. War extra noch mal in der Schule, um den Schülerlaptop zu holen und es zu testen. Ich habe das Gefühl, meine Lösung war damals sehr viel länger aber in der Kürze liegt die Würze. Vielleicht liegt es auch daran, dass ich damals noch wollte, dass die Formularfelder in einer bestimmten Reihenfolge angesprungen werden. Aber das ist in der ersten Klasse mit einfachen Arbeitsblättern alles nicht nötig.

So ist es genau richtig und funktioniert wie gewünscht.

Tausend Dank nochmals!

Gruß

Olga
...