Qu'est-ce que Excel VBA CDBL?

CDBL est une fonction VBA qui utilise pour convertir les expressions en un type de données double. VBA comprend un certain nombre de fonctions de conversion de données. Cela permet de changer le type de données d'une variable ou d'une valeur de l'un à l'autre. Dans différents calculs, la conversion est un processus nécessaire pour obtenir le bon résultat. CDBL est l'une des fonctions de conversion de données incluses dans les fonctions de conversion de type dans VBA. CDBL signifie «Convertir en double». Lors du traitement des données, vous pouvez rencontrer des situations pour changer le nombre entier en double. Pour imprimer le résultat précis, cette fonction vous aidera. La fonction VBA CDBL accepte uniquement les chiffres. Toute expression en dehors des nombres produira une erreur de non-correspondance de type.

Format de la fonction CDBL dans Excel VBA

CDBL est une fonction simple qui nécessite une seule expression pour fonctionner en VBA. L'expression doit être un nombre.

  • Expression: est le nombre que vous souhaitez convertir en nombre flottant.

Si l'expression est différente d'un nombre, la fonction renvoie une erreur de non-concordance. Voir l'exemple ci-dessous, où une expression non numérique est passée à la fonction CDBL et a produit une incompatibilité de type d'erreur.

Utilisation de la fonction CDBL dans VBA

Voyons comment la fonction VBA CDBL nous aide dans le traitement des données. Pour obtenir une vue claire et comprendre l'utilisation pratique de la modification du type de données, consultez l'exemple ci-dessous. Vous pouvez voir la différence en fonction du type de données utilisé sur la même variable.

  • Déclarez une variable comme type de données entier et affectez-lui une valeur flottante. Lors de l'impression de la valeur, voyez comment elle va afficher la valeur.

Code:

 Sub Sub addconvert () Dim b As Integer End Sub 

  • Une valeur flottante est affectée à la variable entière déclarée. 785.456923785475 est affecté à la variable b qui est une variable entière.

Code:

 Sous-convertisseur privé add () Dim b As Integer b = 785.456923785475 End Sub 

  • À l'aide d'une boîte de message, imprimez la valeur attribuée.

Code:

 Private Sub addconvert () Dim b As Integer b = 785.456923785475 MsgBox b End Sub 

Voyez comment les résultats montrent la différence lors de l'impression de la valeur.

Vous avez attribué un nombre avec des valeurs flottantes mais la sortie affiche uniquement la partie entière du nombre donné. Ici, la variable «b» est déclarée comme un nombre entier, elle n'acceptera donc pas de valeur flottante. La partie entière de la valeur décimale est prise et la partie décimale est évitée. Puisque la variable est déclarée comme un entier, le nombre sera arrondi à l'entier le plus proche.

Pour imprimer les données telles quelles, changez le type de données variable en double au lieu du type de données entier.

  • En modifiant simplement le même code, vous pouvez imprimer le numéro donné tel quel. Déclarez la variable comme un type de données double.

Code:

 Sub Sub addconvert () Dim b As Sub double end 

  • Un nombre double est attribué à la variable double déclarée. 785.456923785475 est affecté à la variable b qui est double dans le type de données.

Code:

 Sub sub addconvert () Dim b As Double b = 785.456923785475 End Sub 

  • À l'aide d'une boîte de message, imprimez la valeur attribuée.

Code:

 Private Sub addconvert () Dim b As Double b = 785.456923785475 MsgBox b End Sub 

Voyez comment les résultats montrent la différence lors de l'impression de la valeur. Vous avez attribué un numéro avec des valeurs flottantes.

Comparez les deux sorties, vous pouvez voir la différence. Même les données et les variables sont les mêmes, le changement de type de données a changé la sortie entière. De là, vous obtiendrez l'importance du type de données et comment il influence l'ensemble du programme. C'est la raison d'utiliser un type différent de fonctions de conversion avec VBA.

Exemples de fonction CDBL dans Excel VBA

Voici les différents exemples de conversion VBA en double.

Vous pouvez télécharger ce modèle Excel VBA CDBL ici - Modèle Excel VBA CDBL

Exemple # 1: convertir le type de données de chaîne en double

Voyons comment fonctionne la conversion de données et quelles sont les modifications que vous pouvez apporter à l'aide des fonctions de conversion de données. La chaîne est un type de données qui accepte tous les types de données. Une variable est définie comme une chaîne et lui attribue un numéro.

  • Utilisez une fonction privée pour vérifier les changements dans différents types de données, créez une fonction convertissez en privé et déclarez la variable 'a' comme une chaîne.

Code:

 Private Sub convert () Dim a As String End Sub 

  • Pour effectuer la conversion, vous avez besoin d'une variable. Puisque la variable se convertit en type de données double, déclarez-la comme un type de données double. Après la conversion des données, la valeur sera affectée à cette variable.

Code:

 Private Sub convert () Dim a As String Dim convert As As Double End Sub 

  • Attribuez un nombre flottant 1234.5645879 à la variable de chaîne. Le type de données chaîne acceptera les nombres avec des valeurs flottantes.

Code:

 Private Sub convert () Dim a As String Dim convert As As Double a = 1234.5645879 End Sub 

  • Utilisez maintenant la fonction VBA CDBL pour convertir la valeur en double. Vous pouvez utiliser la variable 'convert' qui est déclarée comme un type de données double. Passez la variable «a» comme expression à la fonction CDBL.

Code:

 Private Sub convert () Dim a As String Dim convert As As Double a = 1234.5645879 convert = CDbl (a) End Sub 

  • Pour afficher la valeur de sortie, vous pouvez imprimer à l'aide d'une boîte de message.

Code:

 Private Sub convert () Dim a As String Dim convert As As Double a = 1234.5645879 convert = CDbl (a) MsgBox convert End Sub 

  • Exécutez ce code en appuyant directement sur F5 ou en appuyant manuellement sur le bouton Exécuter dans le panneau supérieur gauche.

  • La valeur affectée à la variable 'a' sera imprimée de la même manière avec des virgules flottantes et une valeur entière. La valeur est convertie en type de données double et la même est imprimée comme ci-dessous.

Exemple # 2 - Conversion et ajout de deux nombres

Vous avez deux variables à ajouter et à trouver la somme dans le cadre de votre calcul. Les deux sont des nombres flottants avec des valeurs décimales. Mais une variable est déclarée entière et une autre double.

  • Créez une fonction add pour trouver la somme de deux nombres. Deux variables A1 et A2 sont déclarées respectivement entières et doubles.

Code:

 Sous-privé ajouter () Dim A1 comme Entier Dim A2 comme Sub Double End 

  • Attribuez les deux nombres aux variables respectives. Les deux sont deux nombres flottants avec des valeurs décimales.

Code:

 Private Sub add () Dim A1 As Integer Dim A2 As Double A1 = 1256.45 A2 = 1234.58 End Sub 

  • Déclarez une troisième somme variable comme type de données double car le résultat sera une valeur double.

Code:

 Private Sub add () Dim A1 As Integer Dim A2 As Double Dim sum As Double A1 = 1256.45 A2 = 1234.58 End Sub 

  • Ajoutez les deux nombres donnés et mettez le résultat dans la somme variable.

Code:

 Private Sub add () Dim A1 As Integer Dim A2 As Double Dim sum As Double A1 = 1256.45 A2 = 1234.58 sum = A1 + A2 End Sub 

  • L'utilisation d'une boîte de message permet d'imprimer la sortie.

Code:

 Private Sub add () Dim A1 As Integer Dim A2 As Double Dim sum As Double A1 = 1256.45 A2 = 1234.58 sum = A1 + A2 MsgBox sum End Sub 

  • Exécutez ce code en appuyant directement sur F5 ou en appuyant manuellement sur le bouton Exécuter dans le panneau supérieur gauche.

Le résultat attendu est 2491.03 et lors de la vérification de la sortie, vous pouvez voir une différence dans le résultat. Le décalage dans le résultat s'est produit en raison de la valeur prise par la variable A1. Comme il s'agit d'une variable entière, cela n'acceptera pas la partie décimale du nombre, seule la partie entière est prise lors du traitement de la somme.

  • Pour éviter cela, convertissez le nombre A1 en double et affectez le nombre converti à une autre variable A3.

Code:

 Private Sub add () Dim A1 As Integer Dim A2 As Double Dim sum As Double A1 = 1256.45 A2 = 1234.58 A3 = CDbl (1256.45) sum = A1 + A2 MsgBox sum End Sub 

  • Ajoutez maintenant la variable convertie avec A2 au lieu de A1. Puisque le nombre est converti en type de données double, la valeur avec des nombres flottants sera acceptée et ajoutée avec A2.

Code:

 Private Sub add () Dim A1 As Integer Dim A2 As Double Dim sum As Double A1 = 1256.45 A2 = 1234.58 A3 = CDbl (1256.45) sum = A2 + A3 MsgBox sum End Sub 

  • Exécutez ce code en appuyant directement sur F5 ou en appuyant manuellement sur le bouton Exécuter dans le panneau supérieur gauche.

La valeur de somme a été corrigée et a produit le résultat attendu.

Choses dont il faut se rappeler

  • La fonction VBA CDBL n'acceptera pas de valeurs plutôt qu'un nombre.
  • Une erreur de non-concordance de type sera produite si une valeur de texte est donnée à la fonction VBA CDBL.
  • Le type de données double affiche une valeur décimale à 13 chiffres.
  • La fonction VBA CDBL vous aide à obtenir un résultat correct lors du traitement des nombres dans Excel.

Articles recommandés

Ceci est un guide de la fonction VBA CDBL. Nous discutons ici comment utiliser la fonction VBA CDBL pour convertir la valeur en type de données Double dans Excel avec quelques exemples pratiques et un modèle Excel téléchargeable. Vous pouvez également consulter nos autres articles suggérés -

  1. Commentaire de bloc VBA
  2. Fonction SUMPRODUCT dans Excel
  3. Plage nommée VBA
  4. Fonction COMBIN dans Excel

Catégorie: