Visual Basic 6 : Algumas funções de datas úteis


DatePart é geralmente utilizado para avaliar uma data e retornar um intervalo de tempo especifico. Ex:DatePart(interval, date[,firstdayofweek[, firstweekofyear]])

DateAdd geralmente é usada para somar ou subtrair um intervalo de tempo específico de uma data. Ex:DateAdd(interval, number, date)

Usando a dupla acima mostraremos como calcular algumas datas :

1-) Inicie um  novo projeto no Visual Basic  e no formulário padrão insira um botão de comando - command1 -, um controle MaskEdBox - maskdata - com as propriedadades : Mask=99/99/9999 , format=dd/mm/yyyy , PromptInclude=true e Promptchar=_ . 

2-) A seguir inclua oito label1() como um control array - para exibir os titulos , e oito label2() - para exibir os valores calculados.

3-) A seguir inclua o seguinte código no evento Click do botão de comando: Irá realizar o cálculo e exibir o resultado nas labels.

Private Sub Command1_Click()
Dim a(8) As Variant
Dim data As Date

If maskdata <> " / / " Then
   data = CVDate(maskdata)
End If

a(0) = Format(data - Day(data) + 1, "dd/mm/yyyy")
a(1) = DateAdd("m", 1, data - Day(data))
a(2) = Format(data - DatePart("y", data) + 1, "dd/mm/yyyy")
a(3) = Format(DateAdd("yyyy", 1, data - DatePart("y", data)), "dd/mm/yyyy")
a(4) = DatePart("d", DateAdd("m", 1, data - Day(data)))
a(5) = DateAdd("yyyy", 1, data - DatePart("y", data)) - data
a(6) = DateAdd("yyyy", 1, data - DatePart("y", data)) - (data - DatePart("y", data))
a(7) = IIf((DateAdd("yyyy", 1, data - DatePart("y", data)) - (data - DatePart("y", data))) = 366, "Bissexto", "Ano não é bissexto")
a(8) = DateAdd("yyyy", 1, data - DatePart("y", data)) - data - 7

For i = 0 To 8
   Label2(i).Caption = a(i)
Next
End Sub

4-) No evento Load do formulário inclua o seguinte código: Código para limpar as etiquetas e exibir a data atual em maskdata.

Private Sub Form_Load()
Dim i As Integer

For i = 0 To 8
    Label2(i).Caption = ""
Next
maskdata = Format(Now, "dd/mm/yyyy")
End Sub

Informe a data para cálculo em maskdata e clique no botão OK e obtenha

Boa noite....

Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique e confira !

Quer migrar para o VB .NET ?

Quer aprender C# ??

Quer aprender os conceitos da Programação Orientada a objetos ?

Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ?

  Gostou ?   Compartilhe no Facebook   Compartilhe no Twitter

Referências:


José Carlos Macoratti