cellule impossible à réactiver

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

phlaurent55

Nous a quittés en 2020
Repose en paix
Bonne année à toutes et tous,

je vous soumet un petit problème qui m'est insurmontable et qui m'a empêché de trouver le sommeil hier soir

ci-joint le fichier et le code

Code:
Public Sub bouton_Click()
Dim tirage
Dim casedelete

Randomize    ' Initialise le générateur de nombres aléatoires.
tirage = Int((26 * Rnd) + 1) ' Renvoie une valeur aléatoire comprise entre 1 et 26.
casedelete = 1 + tirage 'parce que la première lettre de l'alphabet est dans la colonne "2"

Cells(9, casedelete).Select  'pour mettre la lettre sélectionnée
Selection.Font.ColorIndex = 35 ' de la même couleur que le fond

Range("f20").Select 'cache la cellule active derrière le graphe
Range("f20").Value = Cells(9, casedelete).Value ' et y met le résultat

UserForm1.Show 'affiche la boite de saisie de la réponse
End Sub
__________________________________________________________________________________________
Public Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Range("f19").Value = Chr(KeyAscii)

If Range("f19").Value = Range("f20").Value Then 'teste si BONNE REPONSE
    TextBox1.Text = "BRAVO"
    Cells(3, 15).Value = Cells(3, 15).Value + 1 ' incrémente la case "bonnes réponses"
End If
If Range("f19").Value <> Range("f20").Value Then ' TESTE SI MAUVAISE REPONSE
    TextBox1.Text = "ERREUR"
    Cells(4, 15).Value = Cells(4, 15).Value + 1 ' incrémente la case "réponses fausses "
End If

Application.Wait (Now + TimeValue("00:00:03")) ' delai d'affichage de 3 secondes
TextBox1.Text = ""   ‘ efface le contenu en vue de l’utilisation suivante

' jusqu'ici tout fonctionne, ça bloque à la ligne suivante 
[COLOR="Red"]Cells(9, casedelete).Select[/COLOR]
Selection.Font.ColorIndex = 0  ‘pour faire réapparaitre la lettre qui avait été « cachée »

Range("f20").Select 'cache la cellule active derrière le graphe
UserForm1.Hide
End Sub

Merci d'avance
 

Pièces jointes

Re : cellule impossible à réactiver

Bonjour

Ce que tu declares dans un module est reservé à ce module, Casedelete est declaré dans le premier module, et ne peut etre utilisé comme tel dans le deuxieme

Dans le deuxieme, sa valeur est de 0, cells(9,0) provoque une erreur

Supprime ton dim casedelete et au dessus du premier sub,

Code:
Public Dim Casedelete

si tu n'est pas dans un Module mais dans un UserForm ou dans une feuille, mets la ligne seule dans un module

Bonne journée
 
Re : cellule impossible à réactiver

re:

oups erreur de cerveau

tu utilises un code dans sheets, et un code dans userform

tu crees un module et tu declares ta valeur

Public casedelete (pas de dim)

en la creant dans un module, tu la rends utilisable dans tout le classeur
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
169
Réponses
2
Affichages
511
Réponses
4
Affichages
548
Réponses
3
Affichages
665
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
649
Retour