Share via


Accès global aux objets dans les projets Office

Lorsque vous créez un projet Office, Visual Studio génère automatiquement une classe nommée Globals dans le projet. Vous pouvez utiliser la classe Globals pour accéder à plusieurs éléments de projet différents au moment de l'exécution depuis tout code du projet.

S'applique à : Les informations contenues dans cette rubrique s'appliquent aux projets de niveau document et de niveau application pour Microsoft Office 2010 et la version 2007 de Microsoft® Office System. Pour plus d'informations, consultez Fonctionnalités disponibles par type d'application et de projet Office.

Utilisation de la classe Globals

Globals est une classe statique qui conserve des références à certains éléments de votre projet. Grâce à la classe Globals, vous pouvez accéder aux éléments suivants à partir de tout code de votre projet au moment de l'exécution :

  • Classes ThisWorkbook et Sheetn dans un classeur ou projet de modèle Excel. Vous pouvez accéder à ces objets à l'aide des propriétés Globals.ThisWorkbook et Sheetn.

  • Classe ThisDocument dans un document ou un projet de modèle Word. Vous pouvez accéder à cet objet à l'aide de la propriété Globals.ThisDocument.

  • Classe ThisAddIn dans un projet de niveau application. Vous pouvez accéder à cet objet à l'aide de la propriété Globals.ThisAddIn.

  • Tous les rubans de votre projet que vous avez personnalisé en utilisant le Concepteur de ruban. Vous pouvez accéder aux rubans à l'aide de la propriété Globals.Ribbons. Pour plus d'informations, consultez Accès au ruban au moment de l'exécution.

  • Toutes les régions de formulaire Outlook dans un projet de complément Outlook. Vous pouvez accéder aux régions de formulaire à l'aide de la propriété Globals.FormRegions. Pour plus d'informations, consultez Accès à une zone de formulaire au moment de l'exécution.

  • Objet de fabrique qui vous permet de créer des contrôles de ruban, des balises actives et des éléments hôtes au moment de l'exécution dans les projets ciblant .NET Framework 4. Vous pouvez accéder à cet objet à l'aide de la propriété Globals.Factory. Cet objet est une instance d'une classe qui implémente l'une des interfaces suivantes :

    Notes

    Les balises actives sont déconseillées dans Excel 2010 et Word 2010. Pour plus d'informations, consultez Vue d'ensemble des balises actives.

    Notes

    La propriété Factory est uniquement disponible pour les projets qui ciblent le .NET Framework 4. Les projets qui ciblent .NET Framework 3.5 utilisent d'autres méthodes pour créer des contrôles de ruban, des balises actives et des éléments hôtes au moment de l'exécution.

Par exemple, il est possible d'utiliser la propriété Globals.Sheet1 pour insérer le texte dans un contrôle NamedRange sur Sheet1 lorsqu'un utilisateur clique sur un bouton du volet Actions dans un projet au niveau du document pour Excel.

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
    Handles Button1.Click
    Globals.Sheet1.NamedRange1.Value2 = Me.TextBox1.Text
End Sub
private void button1_Click(object sender, EventArgs e)
{
    Globals.Sheet1.namedRange1.Value2 = this.textBox1.Text;
}

Initialisation de la classe Globals

Code qui tente d'utiliser la classe Globals avant la fin de l'initialisation du document ou du complément peut lever une exception au moment de l'exécution. Par exemple, l'utilisation de Globals lors de la déclaration d'une variable au niveau de la classe peut échouer car la classe Globals peut ne pas être initialisée avec des références à tous les éléments hôtes avant l'instanciation de l'objet déclaré.

Notes

La classe Globals n'est jamais initialisée au moment du design, mais des instances de contrôle sont créées par le concepteur. Cela signifie que si vous créez un contrôle utilisateur qui utilise une propriété de la classe Globals depuis la classe de contrôle utilisateur, vous devez spécifier si la propriété doit retourner null avant d'essayer d'utiliser l'objet retourné.

Voir aussi

Concepts

Accès au ruban au moment de l'exécution

Accès à une zone de formulaire au moment de l'exécution

Vue d'ensemble des éléments hôtes et des contrôles hôtes

Élément hôte de document

Élément hôte de classeur

Élément hôte de feuille de calcul

Écriture de code dans les solutions Office

Historique des modifications

Date

Historique

Motif

Mai 2010

Clarification de certains détails.

Améliorations apportées aux informations.