Usuário com melhor resposta
Selecionar Data e apresentar Estação do Ano numa TextBox

Pergunta
-
Boa Tarde!
O meu problema é o seguinte: eu numa comboboxdate tenho já definido que posso selecionar a data de "hoje" e mais qualquer uma data nos próximos 7 dias e o código é o seguinte:
Sub CarregaData()
Dim i As Integer
Dim data As Date
Dim data_texto As String
i = 0
data = Date data_texto = ""
Me.ComboBoxDate.Clear
For i = 1 To 7
data_texto = data Me.ComboBoxDate.AddItem
data_texto data = data + 1
Next i
End Sub
Eu pretendo agora que na useform tenha uma TextBoxPeriodoDoAno que me apresente, conforme a data escolhida, em que período do ano se encontra. Na Text Box só quero que apareça se é Inverno ou Verão . Considera-se como Inverno o período de 1 de Outubro a 30 de Março; de Verão considera-se o período de 1 de Abril a 30 de Setembro e queria que desse para qualquer ano.
Alguém me pode ajudar?
Respostas
-
Coloca no Evento Click da combobox:
Private Sub ComboBoxDate_Click() Dim D As Date, D1 As Date, D2 As Date D = ComboBoxDate.Value D1 = DateSerial(Year(D), 4, 1) '1 de Abril D2 = DateSerial(Year(D), 10, 1) '1 de Outubro If D < D1 Or D >= D2 Then TextBoxPeriodoDoAno = "Inverno" Else TextBoxPeriodoDoAno = "Verão" End If End Sub
Embora não seja a forma ideal, penso que para o que pretendes serve.
- Sugerido como Resposta Felipe Costa GualbertoMVP, Moderator segunda-feira, 20 de maio de 2013 00:05
- Marcado como Resposta JoaoPinto88 segunda-feira, 20 de maio de 2013 14:11
Todas as Respostas
-
Coloca no Evento Click da combobox:
Private Sub ComboBoxDate_Click() Dim D As Date, D1 As Date, D2 As Date D = ComboBoxDate.Value D1 = DateSerial(Year(D), 4, 1) '1 de Abril D2 = DateSerial(Year(D), 10, 1) '1 de Outubro If D < D1 Or D >= D2 Then TextBoxPeriodoDoAno = "Inverno" Else TextBoxPeriodoDoAno = "Verão" End If End Sub
Embora não seja a forma ideal, penso que para o que pretendes serve.
- Sugerido como Resposta Felipe Costa GualbertoMVP, Moderator segunda-feira, 20 de maio de 2013 00:05
- Marcado como Resposta JoaoPinto88 segunda-feira, 20 de maio de 2013 14:11
-