Bonjour a tous

je dois creer un formulaire sous excell pour les salaries de mon entreprise ou il saisissent leurs frais professionnels.

Je n'en suis qu'a la premier partie de mon formulaire ou ils saisissent leurs references.


Ma userform se presente comme suit:

Surename:_____________________
Forename:_____________________
Period: From_____________________ To______________________
Claim Reference:___________________

Avec Trois Boutons:

Save Data: permet d'enregistrer les donnees saisies dans le tableau Excell
Next: Qui passera a l'etape suivante
Cancel: qui devra effacer la derniere ligne enregistre par Save Data


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
Private Sub CancelBot_Click()
Unload Me
End Sub
 
 
Private Sub Nextbot_Click()
 
'second Userform en route
 
End Sub
 
 
Private Sub SaveData_Click()
If Me.Sname.Value = "" Then
MsgBox "You need to type a Surename"
Me.Sname.SetFocus
End If
If Me.Fname.Value = "" Then
MsgBox "You need to type a Forename"
Me.Fname.SetFocus
End If
If Me.Fperiod.Value = "" Then
MsgBox "You need to type a start period"
Me.Fperiod.SetFocus
End If
If Me.Tperiod.Value = "" Then
MsgBox "You need to type an End period"
Me.Tperiod.SetFocus
End If
If Me.Claim.Value = "" Then
MsgBox "You need to type a Claim reference"
Me.Claim.SetFocus
End If
 
Snameconvert = Application.WorksheetFunction.Proper(Me.Sname.Text)
Fnameconvert = Application.WorksheetFunction.Proper(Me.Fname.Text)
Fperiod = Application.WorksheetFunction.Proper(Me.Fperiod.Text)
Tperiod = Application.WorksheetFunction.Proper(Me.Tperiod.Text)
Claim = Application.WorksheetFunction.Proper(Me.Claim.Text)
 
Range("B65536").End(xlUp).Offset(1, 0).Value = Snameconvert
Range("C65536").End(xlUp).Offset(1, 0).Value = Fnameconvert
Range("D65536").End(xlUp).Offset(1, 0).Value = Fperiod
Range("E65536").End(xlUp).Offset(1, 0).Value = Tperiod
Range("A65536").End(xlUp).Offset(1, 0).Value = Claim
 
 
End Sub

Je rencontre 2 Pbs:

1- Je ne sais pas comment demander au bonton Cancel d'annuler la derniere ligne enregistre par le Bouton Save Data

2- save Data ferme ma Userform et ca je ne veux pas, ca sera Next qui devra la fermer en ouvrant une autre ou Cancel en effacant la derniere ligne.


Enfin, le bouton Save data doit vous sembler inutile (a moi aussi) mais je l'ai creer parce que je savais pas comment faire toute les fonctions souhaite avec le bouton Next

Au depart Next devait faire ca:
1- Enregistre les donnes dans les lignes si tout est remplis
2- Signaler si des cases sont vides
3- Obliger a remplir ses cases
4- Une fois tout rempli et enregistre dans le tableau excell passer a la Userform2 (non creer pour le moment)

Je pense que ca doit etre simple mais je sais pas comment faire.

Merci d'avance pour l'aide apporte

Ps: si qq'un peut aussi me montrer comment faire pour le format date des cellules period from et to, ca serait la cerise sur le gateau.

Thanks