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
| Sub NextSheetmodule(lineNum As Variant, colNum As Variant, ByVal module As Variant, nbjour As Integer)
Dim a As Range
Dim b As Range
Dim i As Variant
Dim FdayMSuiv As Integer
i = 1
FdayMSuiv = Weekday(DateSerial(2018, ActiveSheet.Index, 1), vbMonday)
Set a = Cells(lineNum, colNum)
Select Case FdayMSuiv
Case 6
nbjour = nbjour + 1
Case 7
nbjour = nbjour + 2
End Select
While i <> nbjour
If Weekday(DateSerial(2018, ActiveSheet.Index, lineNum + i - 2), vbMonday) <> 6 Then
Set b = Cells(lineNum + i, colNum)
Set b = Union(a, b)
Set a = b
i = i + 1
Else
Set b = Cells(lineNum + i, colNum)
Set b = Union(a, b)
Set a = b
Set b = Cells(lineNum + i + 1, colNum)
Set b = Union(a, b)
Set a = b
lineNum = lineNum + 2
End If
Wend
module_merge2 a, module |
Partager