função Switch do VBA avalia as expressões e retorna valores que associamos com essas expressões . Esse comportamento permite que seus programas VBA para tomar decisões, na forma de "se-então " e semelhantes declarações. Por exemplo , você pode usar a opção para retornar valores com base em expressões envolvendo idade , como os nomes das pessoas que combinam com uma determinada idade . Você pode então usar a instrução " if-then " para a execução do programa rota para código apropriado para aquela pessoa. Primeiro argumento
O primeiro argumento para a função Switch é uma expressão que você quer VBA para avaliar. A expressão pode avaliar qualquer tipo de variável no VBA, incluindo inteiros , cordas e outros tipos. Mudar vai testar a expressão. Se resultar em " verdade", interruptor retornará o valor que tiver vinculado a esta frase . Especifique esse valor como o argumento imediatamente após o argumento contém a expressão. Por exemplo, você pode querer testar a expressão " idade = 40 ", e já VBA retornar o valor " Clark " se a idade é igual a 40. Para conseguir isso, escrever uma declaração switch como " Switch ( idade = 40 , " Clark ")"
segundo argumento
Cada segundo argumento na instrução Switch refere-se a o valor que você deseja mudar para retornar se o argumento que precede imediatamente o valor é avaliada como verdadeira . Em outras palavras , se " Lois " é o valor que você deseja mudar para retornar se a expressão " idade = 35" é verdadeira, então escrever uma declaração switch assim: " Switch ( idade = 35 , " Lois ")" . Note que você não tem que usar cordas para este argumento valor. Documentação VBA indica o tipo de argumento é "Variante ", o que significa que você pode fazer inteiros interruptor de retorno , duplas ou outros tipos de valores.
Valor de retorno
valor de retorno do Switch assume uma das seguintes opções : um valor a partir de um dos argumentos especificados , ou " nulo ", se nenhuma das expressões que você está dizendo Mudar para avaliar os resultados em um valor de "True ". Por exemplo, se a variável " idade " no seguinte declaração é de 40 ou 35 , Switch retornará ou " Clark " ou " Lois ". Se a " idade " não é nem 40 , nem 35 , Switch retornará nulo.
Switch ( idade = 40 , " Clark " , idade = 35 , " Lois " ),
Amostra Programa
Você pode entender a instrução Switch mais facilmente através da execução de um curto programa com essa afirmação. O seguinte programa usa interruptor com dois pares de expressões para avaliar e valores para retornar. Note-se que a variável "v " não tem nenhum tipo específico na sua declaração . A razão para isso é enfatizar o fato de que os argumentos de switch e valores de retorno pode assumir qualquer tipo.
Sub Ages ()
Dim v
Dim idade As Integer
idade = 40
v = switch ( idade = 40 , " Clark " , idade = 35 , " Lois " )
Debug.Print v
End Sub