Partager via


Mot clé Friend

Modifie la définition d’une procédure dans un module de feuille ou un module de classe de manière à ce qu’elle puisse être appelée depuis des modules situés en dehors de la classe, mais faisant partie du projet dans lequel la classe est définie. Les procédures Friend ne peuvent pas être utilisées dans les modules standard.

Syntaxe

[ Privé | Ami | Public ] [ Statique ] [ Sub | Fonction | Propriété ] procedurename

L’argument obligatoire procedurename désigne le nom de la procédure qui sera visible tout au long du projet, mais invisible aux contrôleurs de la classe.

Remarques

Les procédures publiques d’une classe peuvent être appelées de n’importe où, même par des contrôleurs d’instances de la classe . La déclaration d’une procédure Private empêche les contrôleurs de l’objet d’appeler la procédure, mais empêche également l’appel de la procédure à partir du projet dans lequel la classe elle-même est définie.

Friend rend la procédure visible dans tout le projet, mais pas pour un contrôleur d’une instance de l’objet. Friend peut apparaître uniquement dans les modules de formulaire et les modules de classe, et peut uniquement modifier des noms de procédure, et non des variables ou des types. Les procédures d’une classe peuvent accéder aux procédures Friend de toutes les autres classes d’un projet. Les procédures Friend n’apparaissent pas dans la bibliothèque de types de leur classe. Une procédure Friend ne peut pas être liée en retard.

Exemple

Lorsqu’il est placé dans un module de classe, le code suivant met la variable membre dblBalance à la disposition de tous les utilisateurs de la classe du projet. Tout utilisateur de la classe peut récupérer cette valeur ; seul le code situé à l’intérieur du projet peut affecter une valeur à cette variable.

Private dblBalance As Double 
 
Public Property Get Balance() As Double 
 Balance = dblBalance 
End Property 
 
Friend Property Let Balance(dblNewBalance As Double) 
 dblBalance = dblNewBalance 
End Property 

Voir aussi

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.