Iniciar sessão com a Microsoft
Iniciar sessão ou criar uma conta.
Olá,
Selecione uma conta diferente.
Tem várias contas
Selecione a conta com a qual pretende iniciar sessão.

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

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ão necessáriaargumento é qualquer expressão de cadeia ou expressão numérica.

Tipos de Retorno

O nome da função determina o tipo de retorno, conforme mostrado no seguinte:

Função

Tipo de Devolução

Intervalo para o argumento de expressão

CBool

booleano

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

CByte

Byte

0 a 255.

CCur

Moeda

-922.337.203.685.477.5808 para 922.337.203.685.477.5807.

CData

Data

Uma expressão de data válida.

CDbl

Duplo

-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 de escala zero, ou seja, números sem casas decimais. Para números com 28 casas decimais, o intervalo é
+/-7.9228162514264337593543950335. O número mais pequeno diferente de zero é 0,0000000000000000000000000001.

CInt

Inteiro

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

CLng

Longo

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

CSng

Único

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

CStr

Cadeia

Os retornos para CStr dependem do argumento de expressão .

CVar

Variante

O mesmo intervalo que Duplo para carateres numéricos. O mesmo intervalo de Cadeia para carateres não numéricos.

Observações

Se a expressão transmitida para a função estiver fora do intervalo do tipo de dados que está a ser convertido, ocorre um erro.

Em geral, pode documentar o código com as funções de conversão de tipo de dados para mostrar que o resultado de alguma operação deve ser expresso como um tipo de dados específico em vez do tipo de dados predefinido. Por exemplo, utilize CCur para forçar a aritmética da moeda nos casos em que normalmente ocorreria aritmética de precisão única, dupla precisão ou número inteiro.

Deve utilizar as funções de conversão de tipo de dados em vez de Val para fornecer conversões com deteção internacional de um tipo de dados para outro. Por exemplo, quando utiliza CCur, separadores decimais diferentes, separadores de milhares diferentes e várias opções de moeda são devidamente reconhecidos consoante a definição de região do seu computador.

Quando a parte fracionária é exatamente 0,5, CInt e CLng arredondam-na sempre para o número par mais próximo. Por exemplo, 0,5 arredonda para 0 e 1,5 arredonda para 2. CInt e CLng diferem das funções Fix e Int , que truncam, em vez de arredondar, a parte fracionária de um número. Além disso, Fix e Int devolvem sempre um valor do mesmo tipo que é transmitido.

Utilize a função IsDate para determinar se a data pode ser convertida numa data ou hora. O CDate reconhece literais de data e literais de hora, bem como alguns números que se enquadram no intervalo de datas aceitáveis. Ao converter um número numa data, a parte do número inteiro é convertida numa data. Qualquer parte fracionária do número é convertida numa hora do dia, a partir da meia-noite.

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

Também é fornecida uma função CVDate para compatibilidade com versões anteriores do Visual Basic. A sintaxe da função CVDate é idêntica à função CDate . No entanto, CVDate devolve uma Variante cujo subtipo é Data em vez de um tipo de Data real. Uma vez que agora existe um tipo de Data intrínseca, não há mais necessidade de CVDate. O mesmo efeito pode ser alcançado ao converter uma expressão numa Data e , em seguida, atribuí-la a uma Variante. Esta técnica é consistente com a conversão de todos os outros tipos intrínsecos para os subtipos variante equivalentes.

Nota: A função CDec não devolve um tipo de dados discreto; Em vez disso, devolve sempre uma Variante cujo valor foi convertido num subtipo Decimal .

Exemplos de consulta

Expressão

Resultados

SELECT SalePrice,FinalPrice,CBool(SalePrice>FinalPrice) AS Expr1 FROM productSales;

Devolve "SalePrice", "FinalPrice" e avalia se SalePrice é superior a Preço Final. Devolve "-1" se verdadeiro e "0" se for falso.

SELECT ProductID, CByte(Quantity) AS Expr1 FROM productSales;

Devolve "IDDoProduto", converte os valores no campo "Quantidade" em formato bytes e é apresentado na coluna Expr1 Devolve "IDDoProduto", converte os valores no campo "Quantidade" em formato Moeda e é apresentado na coluna Expr1.

SELECT ProductID, CDate(DateofSale) AS Expr1 FROM productSales;

Devolve "ProductID", converte os valores no campo "DateofSale" em Formato de data e é apresentado na coluna Expr1.

SELECT ProductID, CDbl(Discount) AS Expr1 FROM productSales;

Devolve "IDDoProduto", converte os valores no campo "Desconto" em Formato duplo e é apresentado na coluna Expr1.

SELECT ProductID, CInt(Discount) AS Expr1 FROM productSales;

Devolve "IDDoProduto", converte os valores no campo "Desconto" em formato número inteiro e é apresentado na coluna Expr1.

SELECT ProductID, CLng(Discount) AS Expr1 FROM productSales;

Devolve "IDDoProduto", converte os valores no campo "Desconto" em Formato longo e é apresentado na coluna Expr1.

SELECT ProductID, CSng(Discount) AS Expr1 FROM productSales;

Devolve "ProductID", converte os valores no campo "Desconto" em Formato único e é apresentado na coluna Expr1.

SELECT ProductID, CStr(Discount) AS Expr1 FROM productSales;

Devolve "ProductID", converte os valores no campo "Desconto" em Formato de cadeia e é apresentado na coluna Expr1.

SELECT ProductID, CVar(Discount) AS Expr1 FROM productSales;

Devolve "IDDoProduto", converte os valores no campo "Desconto" em Duplo para valores numéricos e Cadeia para valores não numéricos.

Exemplos de VBA

Nota: Os exemplos seguintes demonstram a utilização desta função no módulo VBA (Visual Basic for Applications). Para obter mais informações sobre como trabalhar com o VBA, veja Access VBA Reference (Referência do VBA do Access).

Função CBool

Este exemplo utiliza a função CBool para converter uma expressão num Booleano. Se a expressão for avaliada como um valor diferente de zero, CBool devolve Verdadeiro; caso contrário, devolve Falso.

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 utiliza a função CByte para converter uma expressão num Byte.

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

Função CCur

Este exemplo utiliza a função CCur para converter uma expressão numa 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 utiliza a função CDate para converter uma cadeia numa Data. Em geral, não é recomendado codificar datas e horas como cadeias de carateres (como mostrado neste exemplo). Utilize literais de data e literais de hora, como #12/2/1969# e #4:45:23 PM#.

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 utiliza a função CDbl para converter uma expressão num 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 utiliza a função CDec para converter um valor numérico num decimal.

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

Função CInt

Este exemplo utiliza a função CInt para converter um valor num Número Inteiro.

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

Função CLng

Este exemplo utiliza a função CLng para converter um valor num Valor 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 utiliza a função CSng para converter um valor num Ú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 utiliza a função CStr para converter um valor numérico numa Cadeia.

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

Função CVar

Este exemplo utiliza a função CVar para converter uma expressão numa Variante.

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

Precisa de mais ajuda?

Quer mais opções?

Explore os benefícios da subscrição, navegue em cursos de formação, saiba como proteger o seu dispositivo e muito mais.

As comunidades ajudam-no a colocar e a responder perguntas, a dar feedback e a ouvir especialistas com conhecimentos abrangentes.

Estas informações foram úteis?

Quão satisfeito está com a qualidade do idioma?
O que afetou a sua experiência?
Ao selecionar submeter, o seu feedback será utilizado para melhorar os produtos e serviços da Microsoft. O seu administrador de TI poderá recolher estes dados. Declaração de Privacidade.

Obrigado pelo seu feedback!

×