VBA - INPUTBOx

Résolu
Tehani_t Messages postés 240 Date d'inscription   Statut Membre Dernière intervention   -  
Tehani_t Messages postés 240 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Voici un exemple,

je clique sur un bouton, un input box (avec bouton "OK" et "ANNULER")apparait et me demande de saisir un matricule.

Click "OK" : 1 - vérification que le matricule est bien un numérique si ce n'est pas le cas, une boucle se charge de redemander une saisie jusqu'à obtenir un numérique
2- Vérifie l'existence du matricule

Click "ANNULER" : j'aimerais que le inputbox disparaisse tout simplement.

Qui peut m'aider ?? Merci !
A voir également:

3 réponses

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,
Sub controle_saisie_mat()
'------------------------------------------------------------------------------------------------
'CONTROLE DE SAISIE SUR MATRICULE = NUMERIQUE
'------------------------------------------------------------------------------------------------
Do
matricule = InputBox("Saisir le matricule", "Controle de saisie", "18183")

'Sortie du module si click sur annuler
If vbCancel Then Exit Do


If Not IsNumeric(matricule) Then
MsgBox ("Une valeur numérique est requise !")
End If
Loop Until IsNumeric(matricule)

End Sub

J'espere que cela vous conviendra.
3
Tehani_t Messages postés 240 Date d'inscription   Statut Membre Dernière intervention   21
 
Sub controle_saisie_mat()
'------------------------------------------------------------------------------------------------
'CONTROLE DE SAISIE SUR MATRICULE = NUMERIQUE
'------------------------------------------------------------------------------------------------
Do
matricule = InputBox("Saisir le matricule", "Controle de saisie", "18183")
If Not IsNumeric(matricule) Then
MsgBox ("Une valeur numérique est requise !")
End If
Loop Until IsNumeric(matricule)

End Sub

Sub matricule_existe()
'------------------------------------------------------------------------------------------------
'VERIFIE L'EXISTENCE DU MATRICULE
'------------------------------------------------------------------------------------------------
nb_ligne = ActiveSheet.UsedRange.Rows.Count

i = 2
n = 0

'Boucle qui parcourre les lignes de la premiere colonne pour vérifier l'existence du matricule
Do
i = i + 1
val = Sheets(num_feuil).Cells(i, 1).Value
If val = matricule Then
MsgBox ("Le matricule existe bien")
n = 1
End If
Loop Until n = 1 Or i > nb_ligne

'Affiche un message si le matricule est inexistant
If n = 0 Then
MsgBox ("Le matricule n'existe pas !")
End If

End Sub

Private Sub bt_note_Click()

'------------------------------------------------------------------------------------------------
'SELECTION FEUILLE NOTATION ET LIGNE DU MATRICULE SAISI
'------------------------------------------------------------------------------------------------
matricule = 0
num_feuil = 0

controle_saisie_mat

num_feuil = 7

matricule_existe

'Si le matricule est inexistant alors on reste sur la "Feuil agent"
If n <> 0 Then
Worksheets(num_feuil).Select
ActiveSheet.UsedRange.Rows(i).Select
Else
Worksheets("agent").Select
End If

End Sub
0
Tehani_t Messages postés 240 Date d'inscription   Statut Membre Dernière intervention   21
 
Merci !
0