Avalia uma lista de expressões e retorna um valor ou uma expressão Variante associada com a primeira expressão da lista que é Verdadeiro.
Sintaxe
Switch(expr-1, value-1 [, expr-2, value-2 ] ... [, expr-n, value-n ] )
A sintaxe da função Switch tem os seguintes argumentos:
| Argumento | Descrição |
|---|---|
| expr | Obrigatório. Expressão variante que você deseja avaliar. |
| valor | Obrigatório. Valor ou expressão a ser retornado se a expressão correspondente for True. |
Comentários
A lista de argumentos da função Switch consiste em pares de expressões e valores. As expressões são avaliadas da esquerda para a direita, e o valor associado à primeira expressão a ser avaliada como Verdadeiro é retornado. Se as peças não estiverem emparelhadas corretamente, ocorrerá um erro em tempo de execução. Por exemplo, se expr-1 for True, Switch retornará value-1. Se expr-1 for False, mas expr-2 for True, Switch retornará value-2 e assim por diante.
O switch retornará um valor Nulo se:
- Nenhuma das expressões é verdadeira.
- A primeira expressão True tem um valor correspondente que é Null.
A opção avalia todas as expressões, mesmo que retorne apenas uma delas. Por esse motivo, você deve observar os efeitos colaterais indesejáveis. Por exemplo, se a avaliação de qualquer expressão resultar em um erro de divisão por zero, ocorrerá um erro.
Exemplo de consulta
| Expressão. | Resultados |
|---|---|
| SELECT ProductSales.ProductID, Switch([ProductID]="PRO_XYZ1","First",[ProductID]="PRO_XYZ2","Two",[ProductID]="PRO_XYZ1","Ten") AS testSwitch FROM ProductSales; | Retorna a "ProductID", avalia as expressões na fórmula "Alternar" e alterna os valores existentes com valores definidos para todas as expressões "Verdadeiras". Por exemplo: "PRO_XYZ1" é substituído por "Primeiro", "PRO_XYZ2" é substituído por "Dois" e assim por diante. |
Exemplo de VBA
Observação
Os exemplos a seguir demonstram o uso dessa função em um módulo do Visual Basic for Applications (VBA). Para obter mais informações sobre como trabalhar com o VBA, selecione Referência do desenvolvedor na lista suspensa ao lado de Pesquisar e insira um ou mais termos na caixa de pesquisa.
Este exemplo usa a função Switch para retornar o nome de um idioma que corresponde ao nome de uma cidade.
Function MatchUp (CityName As String)
Matchup = Switch(CityName = "London", "English", _
CityName = "Rome", "Italian", _
CityName = "Paris", "French")
End Function