300 Exemples

Portée variable

Variable Scope

Les portée d'une variable dans Excel VBA détermine où cette variable peut être utilisée. Vous déterminez la portée d'une variable lorsque vous la déclarez. Il existe trois niveaux de portée : niveau de procédure , niveau du module , et niveau module public .





Placer un bouton de commande sur votre feuille de calcul et ajoutez les lignes de code suivantes :

Exemple de portée variable





1. Placez les deux procédures (une procédure est soit une sous-fonction soit une fonction) dans un module. Dans Visual Basic Editor, cliquez sur Insérer, Module. Ajoutez les lignes de code suivantes :

Portée du niveau de procédure dans Excel VBA



2. Résultat lorsque vous cliquez sur le bouton de commande sur la feuille (appelez les deux sous-titres) :

Procédure Niveau Portée Résultat

appliquer le format de soulignement comptable unique aux cellules sélectionnées.

Procédure Niveau Portée Résultat

Explication : la variable txt a une portée au niveau procédure car elle est déclarée dans la procédure (entre Sub et End Sub). Par conséquent, vous ne pouvez utiliser cette variable que dans sub1. La variable txt ne peut pas être utilisée dans sub2.

3. Lorsque vous souhaitez qu'une variable soit disponible pour toutes les procédures d'un module, vous dites que vous souhaitez que la variable ait une portée au niveau du module. Vous devez déclarer la variable dans la section Déclarations générales (en haut du module). Ajustez légèrement le code comme suit :

Portée au niveau du module dans Excel VBA

4. Résultat lorsque vous cliquez sur le bouton de commande sur la feuille :

Niveau du module Portée Résultat

Niveau du module Portée Résultat

Explication : la variable txt peut maintenant être utilisée dans sub2. Le niveau module est utilisé de manière interchangeable avec le niveau module privé. En effet, par défaut, les variables déclarées avec l'instruction Dim dans la section Déclarations générales ont une portée privée. Vous pouvez également définir une variable comme publique. Continuer à lire.

5. En utilisant le mot-clé Public, votre variable sera disponible pour toutes les procédures de tous les modules d'un classeur. C'est ce qu'on appelle la portée au niveau du module public. Ajustez légèrement le code comme suit :

Portée au niveau du module public dans Excel VBA

Explication : maintenant vous pouvez créer un nouveau module et placer un sous appelé sub3 dans ce module. Utilisez le même code que sub2. Ajoutez sub3 à votre code de bouton de commande. Lorsque vous cliquez sur le bouton de commande de la feuille de calcul, vous obtenez trois boîtes de message indiquant « La variable ne peut être utilisée que dans cette procédure » ​​(voir le fichier Excel téléchargeable).

3/4 terminé ! En savoir plus sur les variables >
Aller au chapitre suivant : Déclaration Si Alors



^