Funções de conversão de tipo

Importante :  Este artigo foi traduzido por um sistema de tradução automática, leia o aviso de isenção de responsabilidade. Para sua referência, veja a versão em inglês deste artigo aqui.

Cada função impõe uma expressão para um específico tipo de dados.

Sintaxe

CBool ( expressão )

CByte ( expressão )

CCur ( expressão )

CDate ( expressão )

CDbl ( expressão )

CDec ( expressão )

CInt ( expressão )

CLng ( expressão )

CSng ( expressão )

CStr ( expressão )

CVar ( expressão )

A expressãode necessárioargumento é qualquer expressão de cadeia de caracteres ou expressão numérica.

Tipos de retorno

O nome de função determina o tipo de retorno conforme mostrado a seguir:

Função

Tipo de retorno

Intervalo para expressão argumento

CBool

Booleano

Qualquer válida cadeia de caracteres ou expressão numérica.

CByte

Byte

0 a 255.

CCur

Moeda

-922,337,203,685,477.5808 a 922.337.203.685.477,5807.

CDate

Data

Qualquer expressão de data válida.

CDbl

Double

-1, 79769313486231E308 para
-4.94065645841247E-324 para valores negativos; 4.94065645841247E-324 a 1, 79769313486232E308 para valores positivos.

CDec

Decimal

+ /-79.228.162.514.264.337.593.543.950.335 para números com escala de zero, ou seja, números sem casas decimais. Para números com 28 casas decimais, o intervalo é
+ /-7.9228162514264337593543950335. O menor número possível de diferente de zero é 0,0000000000000000000000000001.

CInt

Número inteiro

-32.768 a 32.767; as frações são arredondadas.

CLng

Longas

-2.147.483.648 a 2.147.483.647; as frações são arredondadas.

CSng

Simples

-3, 402823E38 a-1, 401298E-45 para valores negativos; 1, 401298E-45 a 3.402823 E38 para valores positivos.

CStr

Cadeia de caracteres

Retorna para CStr depende do argumento de expressão .

CVar

Variante

Mesmo intervalo como Double para numéricos. Mesmo intervalo como cadeia de caracteres para não numérico.


Comentários

Se a expressão transmitidos à função está fora do intervalo do tipo de dados que está sendo convertido, ocorre um erro.

Em geral, você pode documentar seu código usando as funções de conversão de tipo de dados para mostrar que o resultado de algumas operações deve ser expresso como um determinado tipo de dados em vez de digitar os dados padrão. Por exemplo, use CCur para forçar moeda aritméticos em casos em precisão simples, precisão dupla ou aritmética inteira normalmente faria ocorrem.

Você deve usar as funções de conversão de tipo de dados em vez de Val para fornecer conversões conhecimento internacional de um tipo de dados para outro. Por exemplo, quando você usa CCur, diferentes separadores decimais, diferentes separadores de milhar e várias opções de moeda são reconhecidas corretamente dependendo da configuração de localidade do seu computador.

Quando a parte fracionária é exatamente 0,5, CInt e CLng sempre arredondam para o número par mais próximo. Por exemplo, 0,5 é arredondado para 0 e 1,5 é arredondado para 2. CInt e CLng diferem das funções Fix e Int , qual truncar, ao invés de arredondar, a parte fracionária de um número. Além disso, corrigir e Int sempre retornam um valor do mesmo tipo passado.

Use a função IsDate para determinar se Data pode ser convertido em uma data ou hora. CDate reconhece literais de data e hora literais, assim como alguns números que estejam dentro do intervalo de datas aceitável. Ao converter um número em uma data, a parte inteira do número é convertida em uma data. Qualquer parte fracionária do número é convertida em uma hora do dia, começando à meia-noite.

CDate reconhece formatos de data de acordo com a configuração de localidade do seu sistema. A ordem correta de dia, mês e ano não pode ser determinada se for fornecida em um formato diferente de uma das configurações de data reconhecidas. Além disso, um formato de data completa não é reconhecido se contiver também a cadeia de caracteres do dia da semana.

Uma função CVDate também é fornecida para compatibilidade com versões anteriores do Visual Basic. A sintaxe da função CVDate é idêntica à função CDate , no entanto, CVDate retorna um Variant cujo subtipo é a Data em vez de um tipo de Data real. Como agora há um tipo , há nenhuma necessidade Variant. O mesmo efeito pode ser obtido convertendo uma expressão para uma Data, e, em seguida, atribuí-la a uma variante. Essa técnica é consistente com a conversão de todos os outros tipos intrínsecos em seus equivalentes variantes subtipos.

Observação : A função CDec não retornar um tipo de dados distinto; em vez disso, ele sempre retorna um Variant cujo valor foi convertido em um subtipo de casas decimais .

Exemplos

Observação : Exemplos a seguir demonstram o uso dessa função em um Visual Basic para módulo Applications (VBA). Para obter mais informações sobre como trabalhar com o VBA, selecione a Referência do desenvolvedor na lista suspensa ao lado de pesquisa e insira um ou mais termos na caixa de pesquisa.

Função CBool

Dica : O construtor de expressões com IntelliSense começando no Access 2010 ajuda a obter as expressões correto.

Este exemplo usa a função CBool para converter uma expressão booliana. Se a expressão for avaliada como um valor diferente de zero, CBool retornará verdadeiro; Caso contrário, retorna False.

Dim A, B, Check
A = 5: B = 5 ' Initialize variables.
Check = CBool(A = B) ' Check contains True.
A = 0 ' Define variable.
Check = CBool(A) ' Check contains False.

Função CByte

Este exemplo usa a função CByte converter uma expressão para um Byte.

Dim MyDouble, MyByte
MyDouble = 125.5678 ' MyDouble is a Double.
MyByte = CByte(MyDouble) ' MyByte contains 126.

Função CCur

Este exemplo usa a função CCur para converter uma expressão para uma moeda.

Dim MyDouble, MyCurr
MyDouble = 543.214588 ' MyDouble is a Double.
MyCurr = CCur(MyDouble * 2)
' Convert result of MyDouble * 2 (1086.429176) to a
' Currency (1086.4292).

Função CDate

Este exemplo usa a função CDate para converter uma cadeia de caracteres em uma Data. Em geral, embutir datas e horas como cadeias de caracteres (como mostrado neste exemplo) não é recomendável. Use literais de data e hora literais, como #2/12/1969 # e # 4:45:23 PM #, em vez disso.

Dim MyDate, MyShortDate, MyTime, MyShortTime
MyDate = "February 12, 1969"
' Convert to Date data type.
MyShortDate = CDate(MyDate)
MyTime = "4:35:47 PM"
' Convert to Date data type.
MyShortTime = CDate(MyTime)

Função CDbl

Este exemplo usa a função CDbl para converter uma expressão para um duplo.

Dim MyCurr, MyDouble
MyCurr = CCur(234.456784)
' Convert result to a Double.
MyDouble = CDbl(MyCurr * 8.2 * 0.01)

Função CDec

Este exemplo usa a função CDec para converter um valor numérico em um Decimal.

Dim MyDecimal, MyCurr
MyCurr = 10000000.0587 ' MyCurr is a Currency.
MyDecimal = CDec(MyCurr) ' MyDecimal is a Decimal.

Função CInt

Este exemplo usa a função CInt para converter um valor em um número inteiro.

Dim MyDouble, MyInt
MyDouble = 2345.5678 ' MyDouble is a Double.
MyInt = CInt(MyDouble) ' MyInt contains 2346.

Função CLng

Este exemplo usa a função CLng para converter um valor para um longo.

Dim MyVal1, MyVal2, MyLong1, MyLong2
MyVal1 = 25427.45
MyVal2 = 25427.55 ' MyVal1, MyVal2 are Doubles.
MyLong1 = CLng(MyVal1)
' MyLong1 contains 25427.
MyLong2 = CLng(MyVal2)
' MyLong2 contains 25428.

Função CSng

Este exemplo usa a função CSng para converter um valor em um único.

Dim MyDouble1, MyDouble2, MySingle1, MySingle2
' MyDouble1, MyDouble2 are Doubles.
MyDouble1 = 75.3421115: MyDouble2 = 75.3421555
MySingle1 = CSng(MyDouble1)
' MySingle1 contains 75.34211.
MySingle2 = CSng(MyDouble2)
' MySingle2 contains 75.34216.

Função CStr

Este exemplo usa a função CStr para converter um valor numérico em uma cadeia de caracteres.

Dim MyDouble, MyString
MyDouble = 437.324 ' MyDouble is a Double.
MyString = CStr(MyDouble)
' MyString contains "437.324".

Função CVar

Este exemplo usa a função CVar para converter uma expressão variante.

Dim MyInt, MyVar
MyInt = 4534 ' MyInt is an Integer.
MyVar = CVar(MyInt & "000")
' MyVar contains the string 4534000.

Observação : Aviso de Isenção de Tradução Automática: Este artigo foi traduzido por computador, sem intervenção humana. A Microsoft oferece essas traduções automáticas para ajudar as pessoas que não falam inglês a aproveitar os textos escritos sobre produtos, serviços e tecnologias da Microsoft. Como este artigo foi traduzido automaticamente, é possível que contenha erros de vocabulário, sintaxe ou gramática.

Expanda suas habilidades
Explore o treinamento
Obtenha novos recursos primeiro
Ingressar no Office Insider

Essas informações foram úteis?

Obrigado por seus comentários!

Agradecemos pelos seus comentários! Parece que pode ser útil conectar você a um de nossos agentes de suporte do Office.

×