Este tutorial demonstrará como usar a função CDbl VBA para converter expressões em tipo de dados duplo.
Função CDbl
VBA CDbl Converter Expressão em Inteiro
A função VBA CDbl pode ser usada para converter expressões em tipo de dados duplo dentro do código VBA.
123456 | Sub CDblExample_1 ()MsgBox CDbl (12.345) 'O resultado é: 12.345MsgBox CDbl (-124) 'O resultado é: -124MsgBox CDbl (0,000034) 'O resultado é: 0,000034MsgBox CDbl (-12,000034) 'O resultado é: -12,000034End Sub |
VBA CDbl Converting String to Double
A função VBA CDbl pode ser usada para converter strings em duplos se os caracteres na string tiverem um significado como números.
123456789101112131415161718 | Sub CDblExample_2 ()Dim StrEx como stringStrEx = "112"MsgBox CDbl (StrEx)'O resultado é: 112StrEx = "0,0003"MsgBox CDbl (StrEx)'O resultado é: 0,0003StrEx = "11,00002"MsgBox CDbl (StrEx)'O resultado é: 1100002, é ignoradoStrEx = "$ 112"MsgBox CDbl (StrEx)'O resultado é: 112 $ é ignoradoEnd Sub |
Programação VBA | O Code Generator funciona para você!
Erro de tempo de execução 13 do VBA CDbl Incompatibilidade de tipo
Usar a função VBA CDbl 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 CDblExample_3 ()'O código abaixo resultará em uma mensagem ERROR'CDbl não consegue lidar com caracteres não numéricosDim StrEx como stringStrEx = "Ab13"MsgBox CDbl (StrEx)End Sub |
Configurações regionais do VBA CDbl
A função VBA CDbl 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 CDblExample_4 ()Dim StrEx como stringStrEx = "1,9"MsgBox CDbl (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 é: 1,9StrEx = "1,9"MsgBox CDbl (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 é: 1,9End Sub |
VBA CDbl convertendo booleanos em duplos
A função VBA CDbl pode converter variáveis booleanas em duplos. Se a expressão avaliada for verdadeira, o duplo resultante será -1 e se a expressão avaliada for falsa, o duplo resultante será 0.
12345678910 | Sub CDblExample_5 ()Dim BoolEx As BooleanBoolEx = TrueMsgBox CDbl (BoolEx) 'O resultado é: -1MsgBox CDbl (2 = 2) 'O resultado é: -1BoolEx = FalseMsgBox CDbl (BoolEx) 'O resultado é: 0MsgBox CDbl (1 = 2) 'O resultado é: 0End Sub |
Cansado de procurar exemplos de código VBA? Experimente o AutoMacro!
VBA CDbl convertendo datas para duplas
A função VBA CDbl 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.
123456789101112 | Sub CDblExample_6 ()Dim DateEx As DateDateEx = # 2/3/1940 #MsgBox CDbl (DateEx)'O resultado é: 14644DateEx = # 8/7/1964 10:41:00 PM #MsgBox CDbl (DateEx)'O resultado é: 23596.9451388889DateEx = # 3/7/1934 11h32:04 #MsgBox CDbl (DateEx)'O resultado é: 12485.4806018519End Sub |