La valeur de Pi est 3,14, l’attraction gravitationnelle de la Terre est de 9,8 m / s ^ 2 ^, vous vous intéressez à VBA, etc. Ce sont toutes des constantes et elles ne changent pas.

image

Dans VBA, vous pouvez définir des variables dont la valeur ne peut pas être modifiée dans le programme. Le programmeur VBA définit ces valeurs constantes par eux-mêmes dans le programme pour les utiliser encore et encore.

Comment définir une valeur constante dans VBA? Nous utilisons le mot-clé Const * pour déclarer une constante dans VBA.

La syntaxe de déclaration d’une variable constante dans VBA est:

[<Scope Specifier>] Const <VarName> as <variable_type> = <value>

link:/general-topics-in-vba-excel-vba-variable-scope
=== `ici.

Note: Nous n’utilisons jamais le mot-clé Dim pour déclarer une constante dans VBA.

<VarName>: C’est le nom de la variable constante.

<variable_type>: Le type de la constante. Par exemple, Integer, String, Date, etc.

<valeur>: * La valeur de la variable constante.

Un exemple simple de variable constante est:

Const pi as double = 3.14

Ici, nous avons déclaré la valeur constante de pi dans une variable nommée_pi_. Nous pouvons maintenant utiliser ce pidans notre programme. La valeur sera toujours 3,14. Si vous essayez de changer la valeur d’une variable constante, Excel VBA affichera un message d’erreur.

Exemples de variables constantes VBA Étudiez le code ci-dessous:

Const pi As Double = 3.14

Const rad As Double = 6371

Sub Earth()

sArea = 4  pi  Sqr(rad)

Debug.Print sArea

End Sub

Sub Mars()

rad = 3389.5

sArea = 4  pi  Sqr(rad)

Debug.Print sArea

End Sub

Ici, nous avons défini deux constantes, pi et le rad. La valeur de pi est 3,14 et rad est 6371 qui est le rayon de la terre.

Maintenant, lorsque nous exécutons le premier sous-sol de la Terre, cela fonctionne parfaitement et imprime la surface de la Terre.

Dans le prochain sous-Mars, nous avons redéfini le rad constant car le rayon de mars est différent. Lorsque nous exécutons ce programme, il génère une erreur disant: « L’affectation à une constante n’est pas autorisée ».

image

Comment réinitialiser une constante dans VBA

Comme vous l’avez vu dans l’exemple ci-dessus, nous ne pouvons pas attribuer de nouvelles valeurs à une constante. Oui, vous ne pouvez pas.

Mais si vous devez toujours utiliser le même nom comme une valeur fixe différente, utilisez simplement le mot-clé Const * avant l’affectation.

Le code ci-dessous fonctionnera parfaitement.

Const pi As Double = 3.14

Const rad As Double = 6371

Sub Earth()

sArea = 4  pi  Sqr(rad)

Debug.Print sArea

End Sub

Sub Mars()

Const rad = 3389.5

sArea = 4  pi  Sqr(rad)

Debug.Print sArea

End Sub

Le sous-programme ci-dessus fonctionnera parfaitement sans aucune erreur. Mais je ne recommande pas cette approche. Le meilleur moyen est d’identifier les constantes publiques et privées et de les définir séparément. Et cela nous amène à notre prochain segment.

Constantes publiques et privées dans VBA Comme nous l’avons appris dans les exemples ci-dessus, certaines constantes peuvent être universelles et d’autres peuvent différer pour différents objets. Comme, la valeur pi est constante pour tout l’univers, mais le nombre de planètes du système solaire au système solaire et le rayon des planètes varient d’une planète à l’autre.

Comme le rayon de la Terre est constant pour elle, pas pour l’univers.

De même, dans les programmes, certaines constantes seront privées des sous et des modules et certaines seront publiques pour l’ensemble du projet VBA. Votre travail consiste à les identifier et à les déclarer différemment.

Prenons un autre exemple:

Public Const pi As Double = 3.14     ' This can be accessed from any module in the project

Private Const planets As Integer = 8 ' this is private to this module

Sub Earth()

Const rad As Double = 6371    'Private to this subroutine. Can't be accessed outside

sArea = 4  pi  Sqr(rad)

Debug.Print sArea

End Sub

Sub Mars()

Const rad As Double = 3389.5 'Private to this subroutine. Can't be accessed outside

sArea = 4  pi  Sqr(rad)

Debug.Print sArea

End Sub

Il s’agit d’une simple portée de variable spécifiant. Vous pouvez lire sur le paramètre de portée de variable link: / general-topics-in-vba-excel-vba-variable-scope [ici en détail].

Alors oui les gars, c’est ainsi que vous déclarez et utilisez des constantes dans Excel VBA. J’ai essayé d’expliquer de manière créative. J’espère avoir été suffisamment explicatif. Si vous avez le moindre doute, demandez dans la section commentaires ci-dessous. Je serai heureux de vous entendre et de vous répondre.

Articles liés:

link: / general-topics-in-vba-excel-vba-variable-scope [Excel VBA Variable Scope] | nous avons des spécificateurs d’accès aux variables qui définissent à partir de quel endroit une variable définie peut être accédée. Excel VBA n’est pas une exception. VBA a également des spécificateurs de portée. Ces spécificateurs d’étendue peuvent être utilisés pour définir la visibilité / l’étendue d’une variable dans Excel VBA.

link: / cells-ranges-rows-and-columns-in-vba-what-is-the-difference-between-byref-and-byval-arguments-vba-interview-question [ByRef and ByVal Arguments] | Quand un argument est passé en tant qu’argument ByRef à un autre sous ou fonction, la référence de la variable réelle est envoyée. Toute modification apportée à la copie de la variable sera reflétée dans l’argument d’origine.

link: / files-workbook-and-worksheets-in-vba-delete-sheets-without-confirmation-prompts-using-vba-in-microsoft-excel [Supprimer les feuilles sans invites de confirmation à l’aide de VBA dans Microsoft Excel] | Depuis vous supprimez des feuilles en utilisant VBA, vous savez ce que vous faites. Vous voudriez dire à Excel de ne pas afficher cet avertissement et de supprimer la fichue feuille.

link: / files-workbook-and-worksheets-in-vba-add-and-save-new-workbook-using-vba-in-microsoft-excel [Ajouter et enregistrer un nouveau classeur à l’aide de VBA dans Microsoft Excel 2016] | Dans ce code, nous avons d’abord créé une référence à un objet de classeur. Et puis nous l’avons initialisé avec un nouvel objet classeur. L’avantage de cette approche est que vous pouvez effectuer facilement des opérations sur ce nouveau classeur. Comme enregistrer, fermer, supprimer, etc `link: / menus-toolbars-status-bar-in-vba-display-a-message-on-the-statusbar-using-vba-in-microsoft-excel [Afficher un message sur La barre d’état Excel VBA] `La barre d’état d’Excel peut être utilisée comme moniteur de code. Lorsque votre code VBA est long et que vous effectuez plusieurs tâches en utilisant VBA, vous désactivez souvent la mise à jour de l’écran afin de ne pas voir ce scintillement de l’écran `link: / general-topics-in-vba-turn-off-warning-messages- using-vba-in-microsoft-excel [Désactiver les messages d’avertissement à l’aide de VBA dans Microsoft Excel 2016] `| Ce code non seulement désactive les alertes VBA, mais augmente également l’efficacité temporelle du code. Voyons comment.

Articles populaires:

lien: / clavier-formule-raccourcis-50-excel-raccourcis-pour-augmenter-votre-productivité [50 raccourcis Excel pour augmenter votre productivité] | Accélérez votre tâche. Ces 50 raccourcis vous permettront de travailler encore plus rapidement sur Excel.

lien: / formules-et-fonctions-introduction-de-vlookup-function [La fonction RECHERCHEV dans Excel] | C’est l’une des fonctions les plus utilisées et les plus populaires d’Excel qui est utilisée pour rechercher des valeurs à partir de différentes plages et feuilles.

lien: / tips-countif-in-microsoft-excel [COUNTIF dans Excel 2016] | Comptez les valeurs avec des conditions en utilisant cette fonction étonnante. Vous n’avez pas besoin de filtrer vos données pour compter une valeur spécifique.

La fonction Countif est indispensable pour préparer votre tableau de bord.

lien: / excel-formule-et-fonction-excel-sumif-function [Comment utiliser la fonction SUMIF dans Excel] | C’est une autre fonction essentielle du tableau de bord. Cela vous aide à résumer les valeurs sur des conditions spécifiques.