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 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162
|
Dim nomfeuille As String 'sub ajoutfeuille
Dim mois As String 'sub ajoutfeuille ET sub calendrier ==> jours
Dim annee As String 'sub ajoutfeuille ET sub calendrier ==> Bissextile ==> jours
Dim bissextile As Boolean 'sub calendrier ==> Bissextile ==> jours
Dim nbrjour As Integer 'sub calendrier ==> jours
Dim cmois As Integer 'sub calendrier ==> jours
Dim i As Integer 'sub calendrier ==> jours
Dim datef As String 'sub calendrier ==> jours
Dim w As Integer
Dim x As String
Dim valeur
Dim y As Integer
Sub test()
Call ajoutfeuille
Call calendrier
Call nomcolonne
Call miseenforme
Call samedidimanche
End Sub
Sub ajoutfeuille()
Sheets("DEBUT").Activate
mois = Cells(5, 8)
annee = Cells(7, 8)
nomfeuille = mois & " " & annee
Sheets.Add(After:=Worksheets(Worksheets.Count)).Name = nomfeuille
End Sub
Sub calendrier()
'============ Bissextile =========='
bissextile = ((annee Mod 400 = 0) Or (annee Mod 4 = 0 And annee Mod 100 <> 0))
'========== jour =========='
If mois = "Février" Then
If bissextile = True Then
nbrjour = 29
Else
nbrjour = 28
End If
Else
Select Case mois
Case Is = "Janvier", "Mars", "Mai", "Juillet", "Aout", "Octobre", "Decembre"
nbrjour = 31
Case Else
nbrjour = 30
End Select
End If
'janvier = 31
'fevrier = 29 ou 28
'mars = 31
'avril = 30
'mai = 31
'juin = 30
'juillet = 31
'aout = 31
'septembre = 30
'octobre = 31
'novembre = 30
'decembre = 31
Select Case mois
Case Is = "Janvier"
cmois = 1
Case Is = "Février"
cmois = 2
Case Is = "Mars"
cmois = 3
Case Is = "Avril"
cmois = 4
Case Is = "Mai"
cmois = 5
Case Is = "Juin"
cmois = 6
Case Is = "Juillet"
cmois = 7
Case Is = "Aout"
cmois = 8
Case Is = "Septembre"
cmois = 9
Case Is = "Octobre"
cmois = 10
Case Is = "Novembre"
cmois = 11
Case Is = "Decembre"
cmois = 12
End Select
i = 0
While i <> nbrjour
i = i + 1
Cells(3, i + 2) = i
datef = cmois & "/" & Cells(3, i + 2) & "/" & annee
Cells(4, 2 + i) = datef
Cells(4, 2 + i).NumberFormat = "ddd"
Wend
End Sub
Sub nomcolonne()
'========== liste des differentes filliere/année =========='
Sheets("DONNEES").Select
Range("A:A").SpecialCells(xlCellTypeConstants, 23).Copy
Sheets(nomfeuille).Select
Range("B5").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
Sub samedidimanche()
w = 0 'changement de filiere
While IsEmpty(Cells(5 + w, 2)) = False
For y = 0 To nbrjour
x = Cells(4 + w, 3 + y).NumberFormat = "ddd"
If x = "sam" Then
Cells(5 + w, 3 + y) = "X" 'mettre couleur
End If
MsgBox ("jour " & x)
MsgBox ("resultat " & Cells(5 + w, 3 + y))
Next
w = w + 1
Wend
End Sub |
Partager