Pessoal,
Hoje darei a melhor dica do ano! E olha
que ainda estamos em Janeiro :)
Seguindo a linha do artigo de ontem (leia aqui),
vou ensinar uma simplificação de código sensacional! Veja o código abaixo:
Sub VerificaMaioridade()
Dim Idade As Byte
Dim Aux As String
Idade = 18
If Idade > 17 Then
Aux = "maior"
Else
Aux = "menor"
End If
MsgBox "Usuário " & Aux & " de idade."
End Sub
É um código bem simples. Primeiramente a declaração da variável 'Idade' como Byte (eu não conheço ninguém com mais de 255 anos, e você?) e depois a declaração da variável 'Aux' (de auxiliar) como String, já que é texto.
Então atribuí um valor à variável idade, neste caso 18 anos. Aí é feita uma verificação. Sendo maior que 17 a variável 'Aux' retorna o texto 'maior', caso contrário, retorna menor.
No final é exibida uma caixa de mensagem dizendo se o usuário é maior ou menor de idade (é apenas uma concatenação, exatamente da mesma forma que é feito na planilha, não se assuste!).
Sem problema, né? Agora olhe para o código. Não parece exagero tudo isto de linha para algo tão simples? Eu sei que você concorda comigo, estamos sintonizados. Então vamos simplificar este monstrão aí. Olha como fica:
Sub VerificaMaioridade()
Dim Idade As Byte
Idade = 17
MsgBox "Usuário " & IIf(Idade > 17, "maior", "menor") & " de idade."
End Sub
O quê??? Só isto Anderson??? Pois é... bem melhor, não é mesmo? Perceba que desapareci com a variável 'Aux' e troquei toda a parte do If pela função IIf, concatenada diretamente na frase (que funciona exatamente como a função SE do Excel).
Viiiiish... arrepiou né? Eu avisei que seria o melhor post do ano. \o/
Bom, espero que tenham curtido!
Abraço a todos!
Sub VerificaMaioridade()
Dim Idade As Byte
Dim Aux As String
Idade = 18
If Idade > 17 Then
Aux = "maior"
Else
Aux = "menor"
End If
MsgBox "Usuário " & Aux & " de idade."
End Sub
É um código bem simples. Primeiramente a declaração da variável 'Idade' como Byte (eu não conheço ninguém com mais de 255 anos, e você?) e depois a declaração da variável 'Aux' (de auxiliar) como String, já que é texto.
Então atribuí um valor à variável idade, neste caso 18 anos. Aí é feita uma verificação. Sendo maior que 17 a variável 'Aux' retorna o texto 'maior', caso contrário, retorna menor.
No final é exibida uma caixa de mensagem dizendo se o usuário é maior ou menor de idade (é apenas uma concatenação, exatamente da mesma forma que é feito na planilha, não se assuste!).
Sem problema, né? Agora olhe para o código. Não parece exagero tudo isto de linha para algo tão simples? Eu sei que você concorda comigo, estamos sintonizados. Então vamos simplificar este monstrão aí. Olha como fica:
Sub VerificaMaioridade()
Dim Idade As Byte
Idade = 17
MsgBox "Usuário " & IIf(Idade > 17, "maior", "menor") & " de idade."
End Sub
O quê??? Só isto Anderson??? Pois é... bem melhor, não é mesmo? Perceba que desapareci com a variável 'Aux' e troquei toda a parte do If pela função IIf, concatenada diretamente na frase (que funciona exatamente como a função SE do Excel).
Viiiiish... arrepiou né? Eu avisei que seria o melhor post do ano. \o/
Bom, espero que tenham curtido!
Abraço a todos!
Gostou deste artigo? Então compartilhe com seus amigos e assine para RECEBER MAIS DICAS DE EXCEL POR E-MAIL. Fique a vontade para deixar seu comentário.




