Declaração de switch VBA

Este artigo demonstrará como usar a instrução VBA Switch.

A instrução VBA Switch é usada de maneira semelhante à instrução VBA Select Case.

A sintaxe da instrução Switch

A instrução switch avalia uma lista de expressões para ver se são verdadeiras ou falsas e retorna o valor das primeiras expressões avaliadas como verdadeiras. A lista de argumentos é composta de pares - uma expressão e um valor que é retornado se a expressão for avaliada como verdadeira.

Trocar(expr-1, valor-1, [ expr-2, valor-2… , [ expr-n, valor-n ]])

Usando a instrução Switch em um procedimento VBA

Para usar isso em uma macro, pode ser semelhante a este exemplo abaixo:

1234567 Sub TestSwitch ()Dim strCompany As StringDim CompanyID As IntegerCompanyID = 2strCompany = Switch (CompanyID = 1, "Apple", CompanyID = 2, "IBM", CompanyID = 3, "Samsung")MsgBox strCompaniesEnd Sub

Estamos declarando uma variável inteira para conter os valores das expressões dentro da instrução switch. Em seguida, declaramos outra variável de string para retornar o valor contido nessa expressão.

Usando a instrução Switch com um intervalo

Em vez de codificar o valor que o switch vai avaliar no código, podemos usar um valor que armazenamos em uma célula do Excel para retornar a string que exigimos.

1234567 Sub TestSwitch ()Dim strCompany As StringDim CompanyID As IntegerCompanyID = intervalo ("A2")strCompany = Switch (CompanyID = 1, "Apple", CompanyID = 2, "IBM", CompanyID = 3, "Samsung")MsgBox strCompaniesEnd Sub

Para usar este procedimento, precisaríamos ter um número na célula A2 da planilha. Podemos então executar a macro para obter o nome da empresa (ou seja, Samsung).

Se não tivermos um número na célula A3 e executarmos o código, um erro de incompatibilidade de tipo será retornado.

Criando uma função personalizada com switch VBA

Também podemos criar uma função personalizada usando a opção VBA e usá-la em nossa pasta de trabalho.

123 Função SwitchStatement (i As Integer) As StringSwitchStatement = Switch (i = 1, "Apple", i = 2, "IBM", i = 3, "Samsung")Função Final

Para usar isso em nossa pasta de trabalho, podemos usar a caixa de diálogo Inserir Função.

Clique na célula A3 e, a seguir, clique em Inserir Função na barra de Funções.

Na caixa de diálogo Inserir Função, selecione Usuário definido de Selecione a lista suspensa de categoriae, em seguida, selecione SwitchStatement.

Clique OK, e clique no celular A2.

O nome da empresa, conforme armazenado na Declaração de Mudança, será devolvido à nossa planilha.

wave wave wave wave wave