Bonjour,
Afin de perfection mon fichier et de rendre la vie plus facile à mes chefs, je désire que lorsqu'un employé saisie des heures supplémentaires, cela les note directement à la bonne place ( c'est à dire à la ligne correspondant à son nom et à la date correspondante.)
J'ai crée un UserForm permettant la saisie des heures supplémentaire. (voir image)
Lorsque j'insère la date cela sélection la bonne case selon la date. (Cela fonctionne avec le code ci-dessous)
Je désire maintenant que lorsque l'employé sélectionne son nom dans la ComboBox, cela sélectionne une ligne sous son nom. Ici ça ne fonctionne pas et me met une erreur d’exécution 91 :-(
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 Private Sub MaDate_AfterUpdate() Dim DateRecherchee As Date Dim AnneeEnCours As String Dim chainevide As String Dim Nomfichier As String Nomfichier = ThisWorkbook.Name Nomfichier = Left(Nomfichier, Len(Nomfichier) - 5) AnneeEnCours = Format(Worksheets("2018").Range("AA1").Value, "yyyy") chainevide = "--.--." & AnneeEnCours UnprotectSheet Application.ScreenUpdating = False On Error GoTo Invalide UnprotectSheet DateRecherchee = Me.MaDate.Value Application.GoTo Reference:=Worksheets("2018").Range("AB11:ACD11").Find(DateRecherchee).Offset(14, 0), Scroll:=False ProtectSheet Exit Sub Invalide: MsgBox ("Cette date n'est pas valide pour le fichier " & Nomfichier & " ."), vbCritical Me.MaDate.Value = chainevide End Sub
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 Private Sub ChoixAmbu_Change() Dim NomRecherche As String Dim Nomfichier As String NomRecherche = Me.ChoixAmbu.Value Nomfichier = ThisWorkbook.Name Nomfichier = Left(Nomfichier, Len(Nomfichier) - 5) Application.ScreenUpdating = False On Error GoTo Invalide UnprotectSheet Application.GoTo Reference:=Worksheets("2018").Range("A25:A183").Find(NomRecherche).Offset(1, 2), Scroll:=False ' <----- ligne soulignée en jaune après erreur dexécution 91 Exit Sub Invalide: MsgBox ("Cet utilisateur n'est pas valide pour le fichier " & Nomfichier & " ."), vbCritical End Sub
En finalité, j'aimerai que lorsque la date, le nom et que le reste des informations de l'UserForm sont entrées, cela copie le résultat du calcul d'heures supplémentaire à la bonne place.
Déjà un grand merci pour votre aide.
Cordialement
Partager