Variable ou macro

Bonjour,

Débutant sur Excel, je suis des cours pour me former un minimum. J'en suis aux variables et je dois dire que je comprends pas. Une macro est une commande qui va exécuter ce qu'on lui demande. Mais la variable sert a quoi ? De ce que je vois, a donner un nom et il suffit de marquer le nom de la variable pour que ca execute ce qui est programmé. Par exemple dim NomVariable as string NomVariable="bonjour". Quand je metterai NomVariable, il me repettera bonjour. Mais une macro le fait aussi ? Quelle est la différence.

Ne me lyncher pas. Je n'ai pas saisi, j'essaye de comprendre et d'apprendre. Question sans doute idiote

Bonjour,

une macro est un ensemble d'instructions que l'ordinateur exécutera en séquence pour obtenir un résultat précis. En excel, les macros sont écrites dans un langage de programmation appelé VBA. Les instructions manipulent des données qui sont stockées dans la mémoire de l'ordinateur et auxquelles on peut accéder via un nom de variable.

NomVariable="bonjour"

Lorsque la macro est exécutée et qu'elle rencontre cette instruction, elle met le texte "bonjour" en mémoire à l'emplacement défini par le nom NomVariable.

tu peux ensuite utiliser une instruction vba pour afficher le contenu de cette variable(=emplacement mémoire)

Msgbox NomVariable

La macro suivante contient 5 instructions, si tu exécutes la macro, elle mettra d'abord "bonjour" dans NomVariable, puis affichera le contenu de NomVariable.

sub test() 'on nomme la macro, début de la macro
 dim NomVariable as string 'on définit la variable NomVariable
 NomVariable="Bonjour" ' on met "bonjour" dans la NomVariable
 msgbox NomVariable 'on affiche le contenu de NomVariable
End sub 'fin de la macro

Mais si je mets directement :

msgbox = "bonjour"

Le resultat sera le meme non ?

Bon, je n'en suis qu'au début je n'ai surement pas etais confronté a un cas ou la variable est LA solution.

bonjour,

si tu mets

msgbox "Bonjour"

le résultat sera le même en effet. Et pour ce cas précis, l'utilisation d'une variable n'est pas nécessaire.

En général on utilise une variable quand on détermine qu'on a besoin que sa valeur varie durant l'exécution de la macro. (par exemple un compteur, valeur qui change en fonction d'une condition, résultat d'un calcul, etc ...)

considère l'exemple suivant

Sub coucou()
    Dim nom As String
    nom = InputBox("quel est votre nom ? ")
    MsgBox "Bonjour " & nom
End Sub

cette macro demande (inputbox) un nom, met le nom dans la variable nom (nom=), puis affiche un message de bonjour personnalisé (msgbox)

Merci de ta réponse, ca commence a venir petite à petit. Ca peut servir a retenir un tableau avec son nom plutôt que l'adresse complète avec currentregion etc.

Je dois encore bosser a fond la dessus mais j'entre aperçois l'utilité.

Merci encore.

Rechercher des sujets similaires à "variable macro"