Fonctions de conversion de types de données

Important :  Cet article a été traduit automatiquement, voir l’avertissement. Vous pouvez consulter la version en anglais de cet article ici.

Chaque fonction convertit une expression à une type de données spécifique.

Syntaxe

CBool ( expression )

CByte ( expression )

CCur ( expression )

CDate ( expression )

CDbl ( expression )

CDec ( expression )

CInt ( expression )

CLng ( expression )

CSng ( expression )

CStr ( expression )

CVar ( expression )

La obligatoire expressionargument peut être toute expression de chaîne ou expression numérique.

Types de retour

Le nom de la fonction détermine le type de retour comme indiqué dans les éléments suivants :

Fonction

Valeur de retour

Plage pour expression argument

CBool

Boolean

Toute valide chaîne ou expression numérique.

CByte

Byte (Octet)

entre 0 et 255.

CCur

Devise

-922,337,203,685,477.5808 à 922,337,203,685,477.5807.

CDate

Date

Toute expression de date valide.

CDbl

Double

-1, 79769313486231E308 à
-4, 94065645841247E-324 pour les valeurs négatives ; 4, 94065645841247E-324 à 1, 79769313486232E308 pour les valeurs positives.

CDec

Decimal

+/-79,228,162,514,264,337,593,543,950,335 pour les nombres à échelle zéro, c'est-à-dire les nombres sans décimale. Pour les nombres à 28 décimales, la plage est
+/-7,9228162514264337593543950335. Le plus petit nombre non nul possible est 0,0000000000000000000000000001.

CInt

Nombre entier

-32 768 à 32 767 ; les fractions sont arrondies.

CLng

Long

-2 147 483 648 à 2 147 483 647 ; les fractions sont arrondies.

CSng

Single

-3, 402823E38 et - 1, 401298E-45 pour les valeurs négatives ; 1, 401298E-45 et 3, 402823E38 pour les valeurs positives.

CStr

Chaîne

Les valeurs renvoyées par CStr dépendent de l’argument d’expression .

CVar

Variant

Même plage que Double pour les valeurs numériques. Même plage que String pour les valeurs non numériques.


Notes

Si l' expression passé à la fonction est en dehors de la plage du type de données à convertir en, une erreur se produit.

En règle générale, vous pouvez documenter votre code en utilisant les fonctions de conversion de type de données pour indiquer que le résultat d’une opération doit correspondre à un type de données plutôt que de taper les données par défaut. Par exemple, utilisez CCur pour devise dans les cas où précision simple, double précision ou en arithmétique de nombres entiers normalement.

Vous devez utiliser les fonctions de conversion de type de données au lieu de la fonction Val pour fournir des conversions prenant en compte à l’échelle internationale à partir d’un type de données à l’autre. Par exemple, lorsque vous utilisez CCur, séparateurs décimaux, séparateurs des milliers et diverses options monétaires sont correctement reconnues selon les paramètres régionaux de votre ordinateur.

Lorsque la partie fractionnaire est exactement à 0,5, CInt et CLng toujours arrondissent au nombre pair plus proche. Par exemple, 0,5 est arrondi à 0 et 1,5 est arrondi à 2. CInt et CLng diffèrent des fonctions Fix et Int , qui tronquent, au lieu d’arrondissent, la partie décimale d’un nombre. Outre, Fix et Int renvoient toujours une valeur du même type que celle qu’elle reçoit dans.

Utilisez la fonction IsDate pour déterminer si date peut être convertie en une date ou une heure. CDate reconnaît les littéraux date et heure, ainsi que les nombres compris dans la plage de dates autorisées. Lorsque vous convertissez un nombre à une date, la partie entière du nombre est convertie en date. Toute partie fractionnaire du nombre est converti en une heure du jour, en commençant à minuit.

CDate reconnaît les formats de date en fonction du paramètre paramètres régionaux de votre système. Le bon ordre du jour, mois et année ne peut pas déterminé s’il est fourni dans un format autre qu’un des paramètres de date reconnus. En outre, un format de date longue n’est pas reconnu s’il contient également la chaîne jour de la semaine.

Vous trouverez également une fonction et pour garantir la compatibilité avec les versions antérieures de Visual Basic. La syntaxe de la fonction et est identique Variant , cependant, et renvoie une variante sous-type est Date au lieu d’un type de Date réels. Dans la mesure où il existe désormais un type Date intrinsèque, il n’est plus nécessaire pour et. Le même effet peut être obtenu en convertissant une expression à une Date, puis affectez-le à une variante. Cette technique est cohérente avec la conversion de tous les autres types intrinsèques à leur équivalent sous-type Variant .

Remarque : Le type Decimal ne renvoie pas un type de données ; à la place, elle retourne toujours un type Variant dont la valeur a été convertie en sous-type Decimal .

Exemples

Remarque : Exemples suivants illustrent l’utilisation de cette fonction dans une Visual Basic pour le module d’Applications (VBA). Pour plus d’informations sur l’utilisation de VBA, sélectionnez Référence du développeur dans la liste déroulante en regard de recherche et entrez un ou plusieurs termes dans la zone de recherche.

Fonction CBool

Conseil : Le Générateur d’Expression avec IntelliSense début dans Access 2010 permet l’obtention de vos expressions droite.

Cet exemple utilise la fonction CBool pour convertir une expression booléenne. Si l’expression renvoie une valeur différente de zéro, CBool retourne True; Sinon, elle retourne 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.

Fonction CByte

Cet exemple utilise la fonction CByte pour convertir une expression en octets.

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

CCur, fonction

Cet exemple utilise la fonction CCur pour convertir une expression en devise.

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).

Variant

Cet exemple utilise la fonction CDate pour convertir une chaîne à une Date. En règle générale, programmer les dates et heures comme des chaînes (comme illustré dans cet exemple) n’est pas recommandé. Utiliser des littéraux date et heure, telles que #2/12/1969 # et # 4:45:23 PM # à la place.

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)

Fonction CDbl

Cet exemple utilise la fonction CDbl pour convertir une expression en Double.

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

Decimal

Cet exemple utilise le type Decimal pour convertir une valeur numérique en décimal.

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

Fonction CInt

Cet exemple utilise la fonction CInt pour convertir une valeur d' entier.

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

Fonction CLng

Cet exemple utilise la fonction CLng pour convertir une valeur en un Long.

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.

CSng, fonction

Cet exemple utilise la fonction CSng pour convertir une valeur unique.

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.

Fonction CStr

Cet exemple utilise la fonction CStr pour convertir une valeur numérique à une chaîne.

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

Fonction CVar

Cet exemple utilise la fonction CVar pour convertir une expression à une variante.

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

Remarque : Avertissement traduction automatique : cet article a été traduit par un ordinateur, sans intervention humaine. Microsoft propose cette traduction automatique pour offrir aux personnes ne maîtrisant pas l’anglais l’accès au contenu relatif aux produits, services et technologies Microsoft. Comme cet article a été traduit automatiquement, il risque de contenir des erreurs de grammaire, de syntaxe ou de terminologie.

Développez vos compétences
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×