Bonjour à tous,
Voilà mon souci :
dans un jeu de tables de multiplication, lorsqu'un enfant valide une réponse juste, la touche entrée sélectionne la cellule juste au dessus, pas de problème.
Mais en cas de réponse erronée, j'aimerais que la cellule dans laquelle il a écrit l'erreur reste activée pour qu'il puisse changer son résultat sans se servir des touches de direction.
Je n'arrive pas à trouver le bon code VBA.
Je vous envoie un petit fichier très simplifié du jeu que je suis en train de mettre en place.
Et si vous pouviez m'aider ou me donner des pistes de recherche, ce serait extra.
Merci d'avance
Re : Commenr rester sur la même case après validation
Bonjour, Soda33127, le Forum,
A tester... en admettant que les bons résultats soient mentionnés (et cachés) en colonne O, ce code dans un module :
Code:
Sub Toto()
Dim c As Range
For Each c In Range("e2:e30")
If c.Value <> "" And c.Value <> c.Offset(, 10) Then
c.ClearContents
c.Select
End If
Next
End Sub
et celui-ci dans le module de l'onglet 1 :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Call Toto
End Sub
Sub Toto()
Dim c As Range
Application.ScreenUpdating = False
For Each c In Range("e2:e30")
If c.Value <> "" And c.Offset(, 1).Value = "Non, recommence" Then
c.ClearContents
c.Select
End If
Next
Application.ScreenUpdating = True
End Sub
Re : Commenr rester sur la même case après validation
J'ai donc testé et adapté au fichier et .......
le code fonctionne parfaitement. Un grand merci pour cette aide rapide et complète.
PS :Le jeu n'est pas encore parfait, bien sûr, mais si ça peut intéresser quelqu'un, je joins le fichier.
L'idée est prise sur un pdf du net(merci à Charivari en calcul mental )
Re : Commenr rester sur la même case après validation
Effectivement, ça m'a un peu perturbé mais j'ai trouvé une astuce avec une petite temporisation (pas terrible mais je ne suis pas trop doué encore en vba). Je vais donc essayer ce nouveau code.
Ce site est super, vraiment sympa de nous aider ainsi.
Amicalement