Je vx msgbox le mot était ""n'apparaisse que f18=4
Bonsoir,
Merci pour ce forum et ceux qui y participent pour aider les autres .
s'il vous plait
Je veux que le msgbox le mot était : " & UCase(Expression) n'apparaisse que l'lorsque f18=4
4 fautes
le code se trouve au bouton Proposer
[codeSub Proposer()
Dim NbCar As Byte: Dim i As Byte
Dim NbLettres As Byte: Dim J As Byte
Dim Trouve As Boolean
Dim Lettres As String: Dim La_lettre As String
Dim Expression As String
Dim Debut: Dim Fin
ActiveSheet.Unprotect
If (Range("B17").Value >= 10) Then
MsgBox ("La partie est términée ! Veuillez cliquer sur le bouton nouveau pour recommencer")
Exit Sub
End If
If (Range("E11").Value = "") Then
MsgBox ("Veuillez saisir une lettre. SVP")
Exit Sub
End If
Lettres = UCase(Range("B15").Value)
La_lettre = UCase(Range("E11").Value)
Expression = UCase(Range("J7").Value)
If (InStr(1, Lettres, La_lettre, vbTextCompare) = 0) Then
Range("B15").Value = Lettres & La_lettre
Lettres = UCase(Range("B15").Value)
If (InStr(1, Expression, La_lettre, vbTextCompare) <> 0) Then
Range("E18").Value = Range("E18").Value + 1
Range("B7").Value = ""
NbCar = Len(Expression)
NbLettres = Len(Lettres)
For i = 1 To NbCar
Trouve = False
For J = 1 To NbLettres
If (Mid(Lettres, J, 1) = (Mid(Expression, i, 1))) Then
Trouve = True
Range("B7").Value = Range("B7").Value & Mid(Lettres, J, 1)
End If
Next J
If Trouve = False Then Range("B7").Value = Range("B7").Value & "-"
Next i
Else
'je veux que le msgbox le mot était : " & UCase(Expression) n'apparaisse que l'lorsque f18=4
MsgBox " Le mot était : " & UCase(Expression)
End If
Range("F18").Value = Range("F18").Value + 1
End If
If (UCase(Range("B7").Value) = Expression Or Range("F18").Value >= 4) Then
Debut = Timer
Do While Timer < Debut + 2
Loop
Range("I18").Value = Range("I18").Value + (1 - Range("F18").Value * 0.25)
Range("F18").Value = "": Range("E18").Value = ""
Range("B7").Value = "": Range("B15").Value = "": Range("E11").Value = ""
Range("B17").Value = Range("B17").Value + 1
Nouveau1 (False)
End If
ActiveSheet.Protect DrawingObjects:=True, contents:=True, Scenarios:=True
End Sub][/code]
BONSOIR,
j'ai résolu le problème par:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$F$18" Then
If Target.Value = 4 Then
MsgBox " Le mot était : " & Range("j7").Value
End If
End If
End Sub