149 votes

Que le mot clé Set effectivement fait en VBA ?

Si tout va bien une question facile, mais je tiens tout à fait une réponse technique à cela !

Quelle est la différence entre :

et

dans VBA ? Je sais que ce dernier renverra une erreur, mais je ne comprends pas pourquoi.

Merci beaucoup !

95voto

Treb Points 11153

``est utilisé pour assigner une référence à un objet. Serait l’équivalent de C

77voto

Tomalak Points 150423

Dans votre cas, il produira une erreur. :-)

assigne une référence d’objet. Pour les autres affectations (implicite, facultatif et peu utilisé) affirmation est exacte :

44voto

Galwegian Points 29966

MSDN:

La valeur de mot clé : Dans VBA, le mot clé Set est nécessaire de distinguer entre la cession d’un objet et l’assignation de la propriété par défaut de l’objet. Étant donné que les propriétés par défaut ne sont pas pris en charge dans Visual Basic .NET, le mot clé Set n’est pas nécessaire et n’est plus supporté.

10voto

Jason Lepack Points 2755

Set est utilisé pour définir des références d'objet, par opposition à l'attribution d'une valeur.

1voto

Sean Points 22088

Sur le dessus de ma tête, le jeu est utilisé pour assigner des objets COM aux variables. En faisant un jeu je pense que sous le capot, il fait un appel AddRef() sur l’objet à gérer, c’est à vie.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X