Afficher un message
Vieux 26/01/2004, 14h15   #10 (permalink)
aurelie
Guest
 
Messages: n/a
Par défaut Re: Boite de dialogue qui signale un dépassement de pourcentage

Salut Moa,

J'ai essayé de potasser un bout dessus
On a réussi à trouver qqch mais ca ne marche pas entièrement.
Dans un premier temps, voici ce que ca donne:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Zone As Range
Set Zone = Intersect(Target, Range("A1:A10"))
If Zone Is Nothing Then Exit Sub
For Each Cellule In Zone
If (Cellule.Value > 1 Or Cellule.Value < 0) Then
Cellule.Font.ColorIndex = 3
Cellule.Font.Bold = True
Message = "La valeur de la cellule " & Cellule.Address(RowAbsolute:=False, ColumnAbsolute:=False) & " doit être compris entre 0 et 100." & Chr(13) & Chr(13) & "Veuillez saisir une valeur correcte."
titre = "Valeur incorrecte"
If IsNumeric(Cellule.Value) = True Then
Defaut = Cellule.Value * 100
Else
Defaut = ""
End If
Valeur = Defaut
While (Valeur < 0 Or Valeur > 100)
Valeur = InputBox(Message, titre, Defaut)
Wend
Cellule.Value = Valeur / 100
Cellule.Font.ColorIndex = 0
Cellule.Font.Bold = False
End If
Next

Mais le truc c que ca marche que si on tape une valeur directement dans une cellule de la zone. Alors que mes cellules de A1 à A10 contienne une division. A1 = b12/c12

Comment faire??


ps: je n'ai toujours rien compris à Proc test ()

Merci bcp de votre patience à tous et de votre aide
End Sub