Re : Remplissage automatique
Bonsoir Chris, Pierrejean et le forum,
Ci-dessous, tu trouveras la correction de la procédure en cas d'annulation d'une absence :
Public Sub TraitementAbsences(Target As Range)
' Traitement des absences d'une personne
' Déclaration des variables - Il est préférable d'effectuer les déclarations de variables
Dim DateDeb As Date, DateFin As Date
Dim Motif As String
Dim LeNom As String
Dim LeMoisDeb As String, LeMoisFin As String
Dim rLigneCell As Range, rLigneCellEntiere As Range
Dim intColDeb As Integer, intColFin As Integer, intCol As Integer, intColPas As Integer
' Initialisation des variables
' 1re colonne à traiter
intColDeb = 3
' Dernière colonne à traiter
intColFin = 133
' Pas pour la colonne "Motif" suivante
intColPas = 4
' Traitement de la ligne
With Sheets("Absences")
Set rLigneCellEntiere = .Range("A" & Target.Row & ":EV" & Target.Row)
End With
' RAZ des tableaux mensuels pour un nom
InitialiserMois rLigneCellEntiere.Cells(1, 2)
' Traitement de tous les motifs d'absence pour la ligne
For intCol = intColDeb To intColFin Step intColPas
If rLigneCellEntiere.Cells(1, intCol) <> vbNullString Then
' Affichage des absences - Range : Nom, Motif, Date début, Date fin
AffichageAbsence rLigneCellEntiere.Cells(1, 2), rLigneCellEntiere.Cells(1, intCol), rLigneCellEntiere.Cells(1, intCol + 2), rLigneCellEntiere.Cells(1, intCol + 3)
End If
Next intCol
End Sub
Je te confirme qu'il est possible d'utiliser des USF dans ton fichier.
Il suffit que tu définisses l'aspect visuel et je me chargerai du codage.
Au mieux, puisque tu es entrain d'apprendre. Je te laisse commencer et si tu n'y arrives pas, je t'aiderai.
😉
Et pour terminer, je te remercie pour les compliments.
A l'heure actuelle, dans mon travail, je n'ai pas souvent l'occasion de développer donc dès que je peux m'y remettre c'est avec grand plaisir.
Bonne soirée à tout le monde
A+
Béa