AW: Excel Hilfe
22.12.2006 18:55:19
ChrisL
Hallo Adrian
Das hängt mit der automatischen Aktualisierung zusammen. Unter Extras, Optionen, Berechnung, kannst du diese auf manuell umstellen. Die Befehlstaste, um manuell zu aktualisieren (wenn du das Spiel neu beginnen willst) lautet F9.
Eigentlich dachte ich eher an eine VBA Lösung:
Sub BeispielMakro()
Dim ZufallsZahl As Integer
Dim EingabeZahl As Variant
' Initialisiert den Zufallszahlengenerator
Randomize
' Zufallszahl wird generiert
ZufallsZahl = Int((10 * Rnd) + 1)
' Schleife bis die richtige Zahl erraten wurde
Do
' Benutzer wird aufgeforder eine Zahl einzugeben
EingabeZahl = Application.InputBox(prompt:="Bitte Zahl eingeben:", Type:=1)
' Wenn die Zahl richtig ist dann...
If EingabeZahl = ZufallsZahl Then
Beep
MsgBox "Gratulation!"
Exit Sub
End If
' Wenn die Zahl zu klein ist, dann... sonst...
If EingabeZahl < ZufallsZahl Then
MsgBox "Die Zahl ist zu klein."
Else
MsgBox "Die Zahl ist zu gross."
End If
Loop
End Sub
In Excel, Alt+F11 drücken, dann bist du im VBA-Editor. Anschliessend Menü Einfügen, Modul. Dort den Code reinkopieren und VBA-Editor wieder schliessen.
Starten kannst du über Menü Extras, Makros...
Oder du setzt eine Befehlsschaltfläche (CommandButton) in eine Tabelle. Der Aufruf geht so...
Call BeispielMakro
(oder auch ohne Call)
Das Makro ist noch ausbaufähig. Speziell wenn es darum geht das Spiel abzubrechen, dazu mal schauen was geschieht, wenn du auf die Taste abbrechen drückst:
Sub BeispielMakro()
Dim ZufallsZahl As Integer
Dim EingabeZahl As Variant
' Initialisiert den Zufallszahlengenerator
Randomize
' Zufallszahl wird generiert
ZufallsZahl = Int((10 * Rnd) + 1)
' Schleife bis die richtige Zahl erraten wurde
Do
' Benutzer wird aufgeforder eine Zahl einzugeben
EingabeZahl = Application.InputBox(prompt:="Bitte Zahl eingeben:", Type:=1)
MsgBox EingabeZahl
' Wenn die Zahl richtig ist dann...
If EingabeZahl = ZufallsZahl Then
Beep
MsgBox "Gratulation!"
Exit Sub
End If
' Wenn die Zahl zu klein ist, dann... sonst...
If EingabeZahl < ZufallsZahl Then
MsgBox "Die Zahl ist zu klein."
Else
MsgBox "Die Zahl ist zu gross."
End If
Loop
End Sub
Auch kannst du bei richtiger Eingabe nachfragen, ob das Spiel erneut gestartet werden soll.
If ... Then ... Else ...
Wenn ... Dann ... Sonst ...
Und vielleicht mal die Excel-Hilfe betr. MsgBox lesen.
Weiterhin viel Spass und Gruss
Chris