Bonjour,
Dans une feuille, j'ai mis en place ce code qui, si la cellule est vide, un UserForm apparaît, si la cellule correspond à un jour fériés, définit dans une autre feuille ("Don"), alors la cellule est inactive, si la cellule correspond un jour de week-end, la cellule est inactive.
Mes jours sont sur la ligne 4 de la feuille.
La ligne de code où j'ai mis des *** ne fonctionne pas.
Pouvez-vous m'apporter votre éclairage s'il vous plait ?
Merci
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 Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim COL As Long Dim LIG As Long Dim A As Long 'on regarde si les cellules de la zone B6:BY50 sont vides If Intersect(Range("B6:BY50"), ActiveCell) Is Nothing Then Exit Sub If IsEmpty(ActiveCell.Value) Then LIG = 4 COL = ActiveCell.Column A = Cells(LIG, COL).Value 'on regarde si la date de la colonne ne correspond ni à un jour férié ni à un week-end If A = 0 Then COL = COL - 1 *** If Weekday(Cells(LIG, COL).Value, 2) < 6 Then If IsNumeric(Application.Match(Cells(LIG, COL), Sheets("Don").Range("fériés"), 0)) Then Exit Sub End If 'si tout est ok, alors ouverture de l'UserForm Load FrmAbs FrmAbs.Show End If End Sub
Partager