Função VBA CInt - Converter para inteiro

Índice

Este tutorial demonstrará como usar a função CInt VBA para converter uma expressão para o tipo de dados inteiro.

Função CInt

VBA CInt Converter Expressão em Inteiro

A função VBA CInt pode ser usada para converter expressões em tipo de dados inteiro dentro do código VBA. O número resultante é arredondado para se tornar um inteiro.

123456 Sub CIntExample_1 ()MsgBox CInt (12.34) 'O resultado é: 12MsgBox CInt (12.345) 'O resultado é: 12MsgBox CInt (-124) 'O resultado é: -124MsgBox CInt (-12,34) 'O resultado é: -12End Sub

Arredondamento VBA CInt

A função VBA CInt arredondará a parte decimal de um tipo de número ou uma expressão semelhante a um número. No entanto, ele não é arredondado corretamente em todos os casos. Quando a parte decimal é 0,5, a função VBA CInt retorna o inteiro par mais próximo.

12345678910111213141516 Sub CIntExample_2 ()MsgBox CInt (0,34)'O resultado é: 0MsgBox CInt (0,99)'O resultado é: 1MsgBox CInt (-124,95)'O resultado é: -125MsgBox CInt (1.5)'O resultado é: 2MsgBox CInt (2,5)'O resultado é: 2End Sub

Podemos adicionar um número decimal relativamente pequeno ao nosso valor decimal esperado para alterar o comportamento da função VBA Cint para o esperado.

1234567891011 Sub CIntExample_3 ()MsgBox CInt (2,5)'O resultado é: 2MsgBox CInt (2,5 + 0,001)'O resultado é: 3MsgBox CInt (14.5)'O resultado é: 14MsgBox CInt (14,5 + 0,001)'O resultado é: 15End Sub

Programação VBA | O Code Generator funciona para você!

VBA CInt convertendo strings em inteiros

A função VBA CInt pode ser usada para converter strings em inteiros se os caracteres na string tiverem um significado como números.

123456789101112131415161718 Sub CIntExample_4 ()Dim StrEx como stringStrEx = "112"MsgBox CInt (StrEx)'O resultado é: 112StrEx = "112,3"MsgBox CInt (StrEx)'O resultado é: 112 -> 112,3 é arredondadoStrEx = "11,2"MsgBox CInt (StrEx)'O resultado é: 112 ->, é ignoradoStrEx = "$ 112"MsgBox CInt (StrEx)'O resultado é: 112 -> $ é ignoradoEnd Sub

Erro de tempo de execução do VBA CInt 13 incompatibilidade de tipo

Usar a função VBA Cint com strings que contêm caracteres não numéricos ou caracteres que não têm significado no contexto numérico resultará em um erro de tempo de execução '13': incompatibilidade de tipo.

1234567 Sub CIntExample_5 ()'O código abaixo resultará em uma mensagem ERROR'CInt não pode lidar com caracteres não numéricosDim StrEx como stringStrEx = "Ab13"MsgBox CInt (StrEx)End Sub

Estouro de erro 6 em tempo de execução VBA CInt

Usar a função VBA Cint com strings que resultam em um valor menor ou maior do que o número inteiro esperado resultará em um erro de tempo de execução '6': estouro. O tipo de dados inteiro no Excel tem um valor esperado de -32768 a 32767.

1234567 Sub CIntExample_6 ()'O código abaixo resultará em uma mensagem ERROR'CInt não pode lidar com caracteres não numéricosDim StrEx como stringStrEx = "1234567"MsgBox CInt (StrEx)End Sub

Cansado de procurar exemplos de código VBA? Experimente o AutoMacro!

Configurações regionais do VBA CInt

A função VBA CInt tem comportamento diferente na conversão de strings com vírgula ou ponto. Ele usa as configurações regionais do sistema operacional para separador decimal e separador de dígitos.

12345678910111213141516 Sub CIntExample_7 ()Dim StrEx como stringStrEx = "1,9"MsgBox CInt (StrEx)‘Se as configurações regionais tiverem, como um separador de agrupamento, então'O resultado é: 19‘Se as configurações regionais tiverem, como separador decimal, então'O resultado é: 2 (2 porque 1,9 é arredondado)StrEx = "1,9"MsgBox CInt (StrEx)‘Se as configurações regionais tiverem. como um separador de agrupamento, então'O resultado é: 19‘Se as configurações regionais tiverem. como um separador decimal então'O resultado é: 2 (2 porque 1,9 é arredondado)End Sub

Programação VBA | O Code Generator funciona para você!

VBA CInt convertendo booleanos em inteiros

A função VBA Cint pode converter variáveis ​​booleanas em inteiros. Se a expressão avaliada for verdadeira, o inteiro resultante será -1 e se a expressão avaliada for falsa, o inteiro resultante será 0.

12345678910 Sub CIntExample_8 ()Dim BoolEx As BooleanBoolEx = TrueMsgBox CInt (BoolEx) 'O resultado é: -1MsgBox CInt (2 = 2) 'O resultado é: -1BoolEx = FalseMsgBox CInt (BoolEx) 'O resultado é: 0MsgBox CInt (1 = 2) 'O resultado é: 0End Sub

VBA CInt convertendo datas em inteiros

A função VBA Cint pode converter uma variável de data em um inteiro. O valor retornado é o número interno usado pelo Excel para armazenamento de dados arredondados. Se esse número estiver fora dos limites inteiros esperados para VBA, obtemos um erro de tempo de execução '6': estouro.

123456789 Sub CIntExample_9 ()Dim DateEx As DateDateEx = # 2/3/1940 #MsgBox CInt (DateEx)'O resultado é: 14644DateEx = # 8/7/1964 #MsgBox CInt (DateEx)'O resultado é: 23596End Sub

Você vai ajudar o desenvolvimento do site, compartilhando a página com seus amigos

wave wave wave wave wave