Function UltimoDiaDoMes(Ano As Integer, Mes As Integer) As Integer
'1) Para um ano ser bisexto, ele deve ser divisível por 4,
' não pode ser por 100, exceto se for por 400
'2) Retorna -1 se o mês for menor que 1 ou maior que 12
Dim bEbissexto As Boolean
If Ano Mod 4 = 0 Then
If Ano Mod 100 = 0 Then
If Ano Mod 400 = 0 Then
bEbissexto = True
Else
bEbissexto = False
End If
Else
bEbisexto = True
End If
Else
bEbissexto = False
End If
Select Case Mes
Case 1 'Janeiro
UltimoDiaDoMes = 31
Case 2 'Fevereiro
If bEbissexto = True Then
UltimoDiaDoMes = 29
Else
UltimoDiaDoMes = 28
End If
Case 3 'Março
UltimoDiaDoMes = 31
Case 4 'Abril
UltimoDiaDoMes = 30
Case 5 'Maio
UltimoDiaDoMes = 31
Case 6 'Junho
UltimoDiaDoMes = 30
Case 7 'Julho
UltimoDiaDoMes = 31
Case 8 'Agôsto
UltimoDiaDoMes = 31
Case 9 'Setembro
UltimoDiaDoMes = 30
Case 10 'Outubro
UltimoDiaDoMes = 31
Case 11 'Novembro
UltimoDiaDoMes = 30
Case 12 'Dezembro
UltimoDiaDoMes = 31
Case Else
UltimoDiaDoMes = -1
End Select
End Function
Nenhum comentário:
Postar um comentário