Variable globale hors procédure

Bonjour à tous,

Ma question concerne la définition des variables globales.

Si j'ai bien compris on définit une variable globale en haut d'un module et hors procédure avec :

Public mavariable as variant

Cette variable est donc accessible à toutes les procédures de tous mes modules, quelque soit le module où se trouve cette ligne de code.

Je voudrais savoir s'il est possible de donner une valeur à cette variable hors procédure, car quand j'essaye j'ai une erreur "instruction incorrecte à l'extérieur d'une procédure".

Exemple de ce que je souhaiterai avoir dans un module nommé "Mes_Constantes"

Public tva as double
tva = 0,196

J'aimerais définir des variables entières que j'utilise très souvent

Mais aussi des couleurs, mais ça je sais pas si c'est possible, du genre :

Public macouleur as variant
macouleur = RGB(15,34,192)

Pouvez-vous m'éclaircir sur ces deux points s'il vous plaît?

Merci

Cordialement

Hubert41

Bonjour ,

tu peut les déclarer en temps que constante si elle ne varie pas dans ton pgm :

Public Const tva = 0.196

sinon il faut les initialiser dans ta première fonction il me semble

cordialement

Bonjour

Bonjour ramoutch

Essayes

Public Const TVA As Double = 0.123
Public Const MACOULEUR As Long = RGB(15, 34, 192)

Bonjour,

merci pour vos réponses.

Malheureusement cela ne fonctionne pas, j'ai une erreur "fin d'instruction" dès que je tente d'écrire vos lignes.

J'ai essayé ça pour commencer:

Public Tva as double

Sub definirVariables()
Tva=0.196
End sub

Et dans thisworkbook

j'ai mis

Private Sub Workbook_Open()
Call definirVariables
End Sub

Mais TVA est toujours nulle

Merci

Hubert41

Au temps pour moi le

Public Const TVA As Double = 0.123

fonctionne.

Par contre est-ce que je peux envisager de faire quelque chose comme ça :

public const tva as double = worksheet.function.match("Tva_Valeur",Range("tableau_valeurs"),0)

Je sais c'est tordu, mais en gros si dans un tableau où ma TVA est définie et admettons qu'elle change dans x années, et que dans x années je remplace sa valeur, est-on obligé de changer la valeur de la constante sous VBA?

Je me contenterai de vos solutions sinon.

Merci beaucoup, bonne fin de journée

Bonjour

Je n'en suis pas sur

mais bon il faut essayer, et quand tu auras la réponse, postes-la ici

Rechercher des sujets similaires à "variable globale hors procedure"