Valider les données dans un userform

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 !

siocnarf

XLDnaute Occasionnel
Bonjour,

Je suis à créer un Userform. Dans celui-ci l'utilisateur doit saisir une date et un intervalle interrogation.

Ainsi si un utilisateur sélectionne le jour 24, je ne veux pas qu'il puisse saisir un intervalle de 25. Il pourrait saisir un intervalle de 0 à 23.

Comment puis-je faire en sorte que lorsqu'il saisit une valeur d'intervalle trop grande, le code le vérifie dans le code du userform et que l'utilisateur puisse corriger la valeur??

Code:
Private Sub cboIntervalle_Change()
Dim cIntervalle

cIntervalle = cboIntervalle.Value

End Sub

Private Sub cboJour_Change()
Dim cJour
cJour = cboJour.Value
'MsgBox (cJour)
End Sub

Private Sub UserForm_Click()

End Sub

Private Sub cmdCancel_Click()
    Canceled = True
    Hide
End Sub

Private Sub cmdOK_Click()
    Canceled = False
    Hide
End Sub

Private Sub UserForm_QueryClose(Cancel As Integer, _
  CloseMode As Integer)
  If CloseMode = vbFormControlMenu Then
    Cancel = True
    MsgBox "SVP, utilisez le bouton!"
  End If
End Sub

Sub UserForm_Initialize()
Dim i As Byte
cboJour.Value = Day(Date)
cboIntervalle.Value = 0

'cboJour.List = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 21, 23, 24, 25, 26, 27, 28, 29, 30, 31)
'cboIntervalle.List = Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 21, 23, 24, 25, 26, 27, 28, 29, 30)

For i = 1 To Day(Date)
    cboJour.AddItem i
Next

For i = 0 To Day(Date) - 1
    cboIntervalle.AddItem i
Next

End Sub

Merci,
 
Re : Valider les données dans un userform

Bonjour

Il faut écrire dans les procédures cboIntervalle_Change() et cboJour_Change()

if cboJou.listindex = -1 then exit sub
if cboIntervalle.listindex = -1 then exit sub
If cbyte(cboJour) > cbyte(cboIntervalle) then MsgBox ("erreur")
Ensuite remettre à blanc le combobox

A tester

JP
 
- 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

Réponses
3
Affichages
627
Réponses
12
Affichages
699
S
Réponses
4
Affichages
1 K
Retour