Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2019
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.00 KB | None | 0 0
  1. Global list_number As Integer
  2. Sub NextList()
  3.  
  4. Dim n&, m&, s As Object
  5. On Error Resume Next
  6. For Each s In Sheets
  7. n = s.Name
  8. If n > m Then m = n
  9. Next
  10. Worksheets.Add(after:=Sheets(Sheets.Count)).Name = m + 1
  11. list_number = m + 1
  12. End Sub
  13. Sub Prettify()
  14. With Worksheets(CStr(list_number))
  15. .Range("C1:H1").Merge
  16. .Range("C1:H1") = "Trimester"
  17. .Range("J1:O1").Merge
  18. .Range("J1:O1") = "Trimester"
  19. .Range("C2") = "Date"
  20. .Range("J2") = "Date"
  21. .Range("D2") = "Day"
  22. .Range("K2") = "Day"
  23. .Range("E2") = "Lesson"
  24. .Range("L2") = "Lesson"
  25. .Range("F2") = "HW"
  26. .Range("M2") = "HW"
  27. .Range("G2") = "Grade"
  28. .Range("N2") = "Grade"
  29. .Range("H2") = "Sign"
  30. .Range("O2") = "Sign"
  31. .Range("D3:D5").Merge
  32. .Range("D6:D8").Merge
  33. .Range("D9:D11").Merge
  34. .Range("D3:D5") = "Monday"
  35. .Range("D6:D8") = "Tuesday"
  36. .Range("D9:D11") = "Wednesday"
  37.  
  38. .Range("D3:D5").Orientation = xlUpward
  39. .Range("D6:D8").Orientation = xlUpward
  40. .Range("D9:D11").Orientation = xlUpward
  41. .Range("K3:K5").Merge
  42. .Range("K6:K8").Merge
  43. .Range("K9:K11").Merge
  44. .Range("K3:K5") = "Thursday"
  45. .Range("K6:K8") = "Friday"
  46. .Range("K9:K11") = "Saturday"
  47.  
  48. .Range("K3:K5").Orientation = xlUpward
  49. .Range("K6:K8").Orientation = xlUpward
  50. .Range("K9:K11").Orientation = xlUpward
  51. .Range("E3") = "ICT"
  52. .Range("E4") = "Maths"
  53. .Range("E5") = "CS"
  54. .Range("L3") = "ICT"
  55. .Range("L4") = "Maths"
  56. .Range("L5") = "CS"
  57. .Range("E6") = "ICT"
  58. .Range("E7") = "Maths"
  59. .Range("E8") = "CS"
  60. .Range("L6") = "ICT"
  61. .Range("L7") = "Maths"
  62. .Range("L8") = "CS"
  63. .Range("L5") = "CS"
  64. .Range("E9") = "ICT"
  65. .Range("E10") = "Maths"
  66. .Range("E11") = "CS"
  67. .Range("L9") = "ICT"
  68. .Range("L10") = "Maths"
  69. .Range("L11") = "CS"
  70.  
  71.  
  72.  
  73. .Range("J3:J5").Merge
  74. .Range("J6:J8").Merge
  75. .Range("J9:J11").Merge
  76. .Range("C3:C5").Merge
  77. .Range("C6:C8").Merge
  78. .Range("C9:C11").Merge
  79. .Range("J3:J5").Orientation = xlUpward
  80. .Range("J6:J8").Orientation = xlUpward
  81. .Range("J9:J11").Orientation = xlUpward
  82.  
  83. .Range("C3:C5").Orientation = xlUpward
  84. .Range("C6:C8").Orientation = xlUpward
  85. .Range("C9:C11").Orientation = xlUpward
  86. End With
  87. End Sub
  88.  
  89. Sub set_date(Dat As Integer, Day As String, month As String)
  90. Dim to_be_pasted As String
  91.  
  92. to_be_pasted = CStr(Dat) & " " & month
  93. If Day = "Monday" Then
  94. Worksheets(CStr(list_number)).Range("C3:C5") = to_be_pasted
  95. Worksheets(CStr(list_number)).Range("I1") = get_trem(Dat)
  96. End If
  97. If Day = "Tuesday" Then
  98. Worksheets(CStr(list_number)).Range("C6:C8") = to_be_pasted
  99. Worksheets(CStr(list_number)).Range("I1") = get_trem(Dat)
  100. End If
  101. If Day = "Wednesday" Then
  102. Worksheets(CStr(list_number)).Range("C9:C11") = to_be_pasted
  103. Worksheets(CStr(list_number)).Range("I1") = get_trem(Dat)
  104. End If
  105. If Day = "Thursday" Then
  106. Worksheets(CStr(list_number)).Range("J3:J5") = to_be_pasted
  107. Worksheets(CStr(list_number)).Range("P1") = get_trem(Dat)
  108. End If
  109. If Day = "Friday" Then
  110. Worksheets(CStr(list_number)).Range("J6:J8") = to_be_pasted
  111. Worksheets(CStr(list_number)).Range("P1") = get_trem(Dat)
  112. End If
  113. If Day = "Saturday" Then
  114. Worksheets(CStr(list_number)).Range("J9:J11") = to_be_pasted
  115. Worksheets(CStr(list_number)).Range("P1") = get_trem(Dat)
  116. End If
  117.  
  118. End Sub
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125. Function get_month(Day As Integer) As String
  126. If Day <= 30 Then
  127. get_month = "Sep"
  128. ElseIf Day <= 61 Then
  129. get_month = "Oct"
  130. ElseIf Day <= 92 Then
  131. get_month = "Nov"
  132. ElseIf Day <= 123 Then
  133. get_month = "Dec"
  134. ElseIf Day <= 154 Then
  135. get_month = "Jan"
  136. ElseIf Day <= 183 Then
  137. get_month = "Feb"
  138. ElseIf Day <= 214 Then
  139. get_month = "Mar"
  140. ElseIf Day <= 244 Then
  141. get_month = "Apr"
  142. ElseIf Day > 244 Then
  143. get_month = "May"
  144. End If
  145. End Function
  146. Function get_trem(Day As Integer) As String
  147.  
  148. If get_month(Day) = "Sep" Or get_month(Day) = "Oct" Or get_month(Day) = "Nov" Then get_trem = "I"
  149. If get_month(Day) = "Dec" Or get_month(Day) = "Jan" Or get_month(Day) = "Feb" Then get_trem = "II"
  150. If get_month(Day) = "Mar" Or get_month(Day) = "Apr" Or get_month(Day) = "May" Then get_trem = "III"
  151.  
  152.  
  153. End Function
  154.  
  155. Sub G()
  156. list_number = 1
  157. Dim WeekDays() As Variant
  158. Dim months(9)
  159. Dim Day As Integer
  160. Dim trim As Integer
  161. Dim month As Integer
  162. Dim counter As Integer
  163. Dim wd_val As String
  164.  
  165. Dim days(275) As Integer
  166. Day = 0
  167. WeekDays = Array("Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday")
  168. months(0) = 30
  169. months(1) = 31
  170. months(2) = 31
  171. months(3) = 31
  172. months(4) = 31
  173. months(5) = 29
  174. months(6) = 31
  175. months(7) = 30
  176. months(8) = 31
  177. counter = 0
  178. For month = 0 To 8
  179. For Day = 1 To months(month)
  180. days(counter) = Day
  181. counter = counter + 1
  182. Next Day
  183. Next month
  184.  
  185. 'Call NextList
  186. Dim i As Integer
  187. Dim str As String
  188. For i = 1 To 35
  189.  
  190. Call Prettify
  191. If (i - 1) Mod 7 = 0 Then NextList
  192. str = WeekDays((i - 1) Mod 7)
  193. Call set_date(days(i), str, get_month(i))
  194. Next i
  195.  
  196.  
  197.  
  198. End Sub
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement