Passage d'une variable d'une macro à l'autre - VB/VBA/VBS - Programmation
Marsh Posté le 16-02-2005 à 12:47:00
De quel type est blabla ? String ? Integer ?
Sinon revoit un peu la théorie sur les Sub et Function
Marsh Posté le 16-02-2005 à 12:58:31
C'est de type string, pardon de pas avoir préciser.
Et je veux bien revoir ma théorie (théorie qui a commencé hier) mais peux tu m'indiquer un site?
En fait je suis un peu dans le brouillard sur les raisons qui font que ça ne marche pas, les macros étant un truc propre à VB j'ai pas l'habitude d'en manipuler quand je programme, donc je sais pas trop la différence avec une fonction et sur les utilisations respectives de ces solutions.
Marsh Posté le 16-02-2005 à 12:59:14
C'est quoi tes macros ? Des vrais macros, ou des Sub ou Function ?
Marsh Posté le 16-02-2005 à 13:09:50
sub mainMacro () -> sub
call macro1 -> sub
blabla=fonction() -> function()
call macro2 -> sub
call macro 3 -> sub
end Sub
Je croyais que sub et macro c'était la même chose... visiblement j'ai beaucoup de lacune :s...
Marsh Posté le 16-02-2005 à 13:19:39
C'est presque pareil. Une fonction va retourner une valeur, mais pas une sub.
Donc utilise un paramètre :
Code :
|
Et dans ton main :
Code :
|
Marsh Posté le 16-02-2005 à 14:36:01
Merci beaucoup pour ton aide, cela fonctionne parfaitement.
Marsh Posté le 16-02-2005 à 12:45:56
Bonjour,
Je débute en vba mais j'ai déjà programmé un peu à droite à gauche .
Mon problème est le suivant : j'ai une macro mainMacro qui apelle un certain
nombre d'autres macros et une fonction.
Ca ressemble à ça :
sub mainMacro ()
call macro1
blabla=fonction()
call macro2
call macro 3
end Sub
Mon but est d'utiliser blabla dans macro 2 et macro 3 hors actuellement ça ne fonctionne pas. Faut il rajouter des global, public ou quelque chose du genre? Si oui ou?
Je précise que pour le moment, si j'utilise blabla dans la macro main, ça fonctionne
D'avance merci,
C. apprenti vbiste.