fikriiii
Messages postés27Date d'inscriptionmardi 10 avril 2007StatutMembreDernière intervention11 mai 2007
-
20 avril 2007 à 11:06
cs_lermite222
Messages postés492Date d'inscriptionjeudi 5 avril 2007StatutMembreDernière intervention 2 juillet 2012
-
20 avril 2007 à 11:38
Bonjour,
Via l'évènement: Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Sur une feuille Excel (Feuil2), (thanks to Drikce 06) le code suivant m'a permis d'afficher un MsgBox si l'on tente de remplir une cellule de la colonne F alors que sur la même ligne la cellule de la colonne V est vide.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 6 And IsEmpty(Range("V" & Target.Row)) Then
Call MsgBox(" Veuillez d'abord saisir le nombre d'heures réalisées", _
vbCritical Or vbOKOnly, "Attention")
Call Range("V" & Target.Row).Activate
Range("F" & Target.Row).ClearContents
End If
End Sub
Après avoir saisi la cellule de la colonne V, comme prescrit ci-dessus, j'aimerais afficher un autre MsgBox si la valeur contenu dans la cellule de la colonne U est x fois supérieure à celle contenue dans la cellule que l'on vient de saisir dans la colonne V.
J'ai fait une tentative...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim u, v As Variant
If Target.Column = 6 And IsEmpty(Range("V" & Target.Row)) Then
'Message
Call MsgBox(" Veuillez d'abord saisir le nombre d'heures réalisées", _
vbCritical Or vbOKOnly, "Attention")
'Active la cellule V correspondante
Call Range("V" & Target.Row).Activate
Range("F" & Target.Row).ClearContents
End If
If Target.Column = 6 And Not IsEmpty(Range("V" & Target.Row)) Then
u = Range("U" & Target).Value
v = Range("v" & Target).Value
If u < 0.35 * v Then
Call MsgBox("Ce message ne s'affiche pas...")
End If
End If
End Sub
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 20 avril 2007 à 11:14
Salut,
Petite correction peu être
u = Range("U" & Target .Row ).Value
v = Range("v" & Target.Row).Value
LE message ne s'affichera QUE si:
la cellule cliquée est dans la colonne 6 soit colonne F ET U < 0.35 * V
As tu essayer en cloiquant sur F ou autre part ?
Encore une fois il faut mieux expliquer la marche à suivre.
@+: Ju£i?n Pensez: Réponse acceptée
cs_Nicko11
Messages postés1141Date d'inscriptionmercredi 7 mars 2007StatutMembreDernière intervention19 septembre 20073 20 avril 2007 à 11:15
Salut,
Pour savoir si elle est x fois supérieur tu pourrais aussi utiliser le modulo non. La meilleur chose pour eviter de galerer (et trouver par toi meme au lieu de poster) serait d'utiliser le mode debug de VB. Tu mets un point d'arret sur If u < 0.35 * v Then et tu mets ta souris sur u et v pour voir un peu pourquoi.