Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

thsie

Jeito mais fácil

Recommended Posts

Olá a todos

Bom, gostaria de saber se teria um jeito mais fácil de escrever esse código

 

If Mes1.Text = "Janeiro" Then    Mes2.Text = "Fevereiro"    Mes3.Text = "Março"If Mes1.Text = "Fevereiro" Then    Mes2.Text = "Março"    Mes3.Text = "Abril"If Mes1.Text = "Março" Then    Mes2.Text = "Abril"    Mes3.Text = "Maio"If Mes1.Text = "Abril" Then    Mes2.Text = "Maio"    Mes3.Text = "Junho"If Mes1.Text = "Maio" Then    Mes2.Text = "Junho"    Mes3.Text = "Julho"If Mes1.Text = "Junho" Then    Mes2.Text = "Julho"    Mes3.Text = "Agosto"If Mes1.Text = "Julho" Then    Mes2.Text = "Agosto"    Mes3.Text = "Setembro"If Mes1.Text = "Agosto" Then    Mes2.Text = "Setembro"    Mes3.Text = "Outubro"If Mes1.Text = "Setembro" Then    Mes2.Text = "Outubro"    Mes3.Text = "Novembro"If Mes1.Text = "Outubro" Then    Mes2.Text = "Novembro"    Mes3.Text = "Dezembro"If Mes1.Text = "Novembro" Then    Mes2.Text = "Dezembro"    Mes3.Text = "Janeiro"If Mes1.Text = "Dezembro" Then    Mes2.Text = "Janeiro"    Mes3.Text = "Fevereiro"End IfEnd IfEnd IfEnd IfEnd IfEnd IfEnd IfEnd IfEnd IfEnd IfEnd IfEnd If

Tentei fazer, mas aih deu problema de quando esrever Janeiro, os proximos meses vieram normal, mas quando digito Fevereiro, nem vem mais

Compartilhar este post


Link para o post
Compartilhar em outros sites

depois de cada bloco coloca o END IF e tira todos esses END IF do final ..por exemplo If Mes1.Text = "Janeiro" Then Mes2.Text = "Fevereiro" Mes3.Text = "Março"End if If Mes1.Text = "Fevereiro" Then Mes2.Text = "Março" Mes3.Text = "Abril"End ifou melhor ainda voce poderia usar os ELSEIF da vida ... por exemplo If Mes1.Text = "Janeiro" Then Mes2.Text = "Fevereiro" Mes3.Text = "Março"ElseIf Mes1.Text = "Fevereiro" Then Mes2.Text = "Março" Mes3.Text = "Abril"......end ifou ainda os famosos CASE tb ... por exemplo SELECT CASE Mes1.text CASE "Janeiro" Mes2.Text = "Fevereiro" Mes3.Text = "Março" Case "Fevereiro" Mes2.Text = "Março" Mes3.Text = "Abril" ... ...END SELECT

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, gostaria de saber se teria um jeito mais fácil de escrever esse código

Sim, um jeito muito mais prático:
   meses = Array("Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro")    For i = LBound(meses) To UBound(meses)        If Mês1.Text = meses(i) Then            n1 = i + 1            n2 = i + 2            If n1 > 11 Then n1 = n1 - 12            If n2 > 11 Then n2 = n2 - 12            Mês2.Text = meses(n1)            Mês3.Text = meses(n2)        End If    Next i
Faça o teste aí.Abraços,Graymalkin

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito bom esse seu código mais eu acho que num compensa fazer isso pois fica muito ilegível ...Mais de qualquer forma parabens pela lógica .

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito bom esse seu código mais eu acho que num compensa fazer isso pois fica muito ilegível ...

 

Mais de qualquer forma parabens pela lógica .

<{POST_SNAPBACK}>

Ilegível? :huh: Bom, isso é meio relativo, já que aquele código ali poderia estar em uma sub que seria chamada assim:

 

DefineMeses Mês1, Mês2, Mês3
Ou seja, ilegibilidade é só uma questão de não dar nomes aos bois, na minha humilde opinião. Mas, sem problemas. :)

 

Abraços,

 

Graymalkin

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.