Vue d’ensemble du modèle objet Excel

Pour développer des solutions qui utilisent Microsoft Office Excel, vous pouvez interagir avec les objets fournis par le modèle objet Excel. Cette rubrique présente les objets les plus importants :

Remarque

Vous souhaitez développer des solutions qui étendent l’expérience de Bureau sur plusieurs plateformes ? Consultez le nouveau modèle de compléments Bureau. Bureau compléments ont une petite empreinte par rapport aux compléments et solutions VSTO, et vous pouvez les créer à l’aide de presque n’importe quelle technologie de programmation web, telle que HTML5, JavaScript, CSS3 et XML.

Le modèle objet suit étroitement l'interface utilisateur. L’objet Application représente l’application entière et chaque objet Workbook contient une collection d’objets Worksheet. À partir de là, l'abstraction principale représentant les cellules est l'objet Range, qui vous permet d'utiliser des cellules individuelles ou des groupes de cellules.

Outre le modèle objet Excel, Bureau projets dans Visual Studio fournissent des éléments hôtes et des contrôles hôtes qui étendent certains objets dans le modèle objet Excel. Les éléments hôtes et les contrôles hôtes se comportent comme les objets Excel qu’ils étendent, mais ils possèdent également des fonctionnalités supplémentaires telles que la liaison de données et des événements supplémentaires. Pour plus d’informations, consultez Automatiser Excel à l’aide d’objets étendus et d’éléments hôtes et d’une vue d’ensemble des contrôles hôtes.

Cette rubrique propose une vue d'ensemble succincte du modèle objet Excel. Pour plus d’informations sur l’ensemble du modèle objet Excel, consultez la documentation sur le modèle objet Excel.

Accéder aux objets dans un projet Excel

Lorsque vous créez un projet de complément VSTO pour Excel, Visual Studio crée automatiquement un fichier de code ThisAddIn.vb ou ThisAddIn.cs . Vous pouvez accéder à l'objet Application à l'aide de Me.Application ou de this.Application.

Lorsque vous créez un projet de niveau document pour Excel, vous avez la possibilité de créer un projet Classeur Excel ou Modèle Excel. Visual Studio crée automatiquement les fichiers de code suivants dans votre nouveau projet Excel à la fois pour les projets de classeur et les projets de modèle.

Visual Basic C#
ThisWorkbook.vb ThisWorkbook.cs
Sheet1.vb Sheet1.cs
Sheet2.vb Sheet2.cs
Sheet3.vb Sheet3.cs

Vous pouvez utiliser la classe Globals dans votre projet pour accéder à ThisWorkbook, Sheet1, Sheet2 ou Sheet3 depuis l'extérieur de la classe respective. Pour plus d’informations, consultez Accès global aux objets dans Bureau projets. L’exemple suivant appelle la PrintPreview méthode de Sheet1 , que le code soit placé dans l’une des Sheetclasses n ou dans la ThisWorkbook classe.

Globals.Sheet1.PrintPreview();

Comme les données dans un document Excel sont hautement structurées, le modèle objet est hiérarchique et simple. Excel fournit des centaines d’objets avec lesquels vous souhaiterez peut-être interagir, mais vous pouvez obtenir un bon démarrage sur le modèle objet en se concentrant sur un petit sous-ensemble des objets disponibles. Ces objets incluent les quatre éléments suivants :

  • Application

  • Classeur

  • Feuille de calcul

  • Plage

    La majeure partie du travail effectué avec Excel tourne autour de ces quatre objets et de leurs membres.

Objet application

L'objet Application d'Excel représente l'application Excel. L'objet Application contient une grande quantité d'informations sur l'application en cours d'exécution, les options appliquées à cette instance et les objets utilisateur actuels ouverts dans l'instance.

Remarque

Vous ne devez pas attribuer la valeur EnableEvents à la propriété Application de l'objet T:Microsoft.Office.Interop.Excel.Application. Si cette propriété a la valeur false, Excel ne peut pas déclencher d'événements, y compris les événements de contrôles hôtes.

Objet Workbook

L'objet Workbook représente un classeur unique dans l'application Excel.

Les outils de développement Office dans Visual Studio étendent l'objet Workbook en fournissant le type Workbook . Ce type vous donne accès à toutes les fonctionnalités d'un objet Workbook. Pour plus d’informations, consultez l’élément hôte du classeur.

Worksheet (objet)

L'objet Worksheet est membre de la collection Worksheets. La plupart des propriétés, méthodes et événements de l'objet Worksheet sont strictement identiques, ou similaires, aux membres fournis par les objets Application ou Workbook.

Excel fournit une collection Sheets en tant que propriété d’un objet Workbook. Chaque membre de la collection Sheets est un objet Worksheet ou Chart.

Les outils de développement Office dans Visual Studio étendent l'objet Worksheet en fournissant le type Worksheet . Ce type vous donne accès à toutes les fonctionnalités d’un objet Worksheet, ainsi qu’à de nouvelles fonctionnalités telles que la capacité d’héberger des contrôles managés et de gérer de nouveaux événements. Pour plus d’informations, consultez l’élément hôte de feuille de calcul.

Range (objet)

L'objet Range est l'objet que vous utiliserez le plus fréquemment dans vos applications Excel. Avant de pouvoir manipuler une zone dans Excel, vous devez la spécifier comme étant un objet Range et travailler avec les méthodes et les propriétés de ce dernier. Un objet Range représente une cellule, une ligne, une colonne, une sélection des cellules contenant un ou plusieurs blocs de cellules, qui peuvent ou non être contiguës, ou même un groupe de cellules dans plusieurs feuilles.

Visual Studio étend l'objet Range en fournissant les types NamedRange et XmlMappedRange. Ces types possèdent la plupart des fonctionnalités d’un objet Range, ainsi que de nouvelles fonctionnalités telles que la fonction de liaison de données et de nouveaux événements. Pour plus d’informations, consultez le contrôle NamedRange et le contrôle XmlMappedRange.

Utiliser la documentation du modèle objet Excel

Pour obtenir des informations complètes sur le modèle objet Excel, vous pouvez vous reporter à la documentation de référence de l'assembly PIA (Primary Interop Assembly) Excel et à la documentation de référence du modèle objet VBA.

Informations de référence sur l’assembly d’interopérabilité principale

La documentation de référence de l'assembly PIA Excel décrit les types de l'assembly PIA pour Excel. Cette documentation est disponible à partir de l’emplacement suivant : Référence d’assembly d’interopérabilité principale Excel 2010.

Pour plus d’informations sur la conception de l’assembly PIA Excel, telles que les différences entre les classes et les interfaces dans l’assembly PIA et la façon dont les événements dans l’assembly PIA sont implémentés, consultez Vue d’ensemble des classes et des interfaces dans les assemblys d’interopérabilité principaux Bureau.

Référence du modèle objet VBA

La documentation de référence du modèle objet VBA présente le modèle objet Excel tel qu'il est exposé au code VBA (Visual Basic pour Applications). Pour plus d’informations, consultez la référence du modèle objet Excel 2010.

Tous les objets et membres mentionnés dans la documentation de référence du modèle objet VBA correspondent aux types et aux membres de l'assembly PIA Excel. Par exemple, l’objet Worksheet dans la référence du modèle objet VBA correspond à l’objet Worksheet dans l’assembly PIA Excel. Même si la documentation de référence du modèle objet VBA fournit des exemples de code pour la plupart des propriétés, méthodes et événements, vous devez traduire le code VBA fourni dans documentation de référence en Visual Basic ou Visual C# pour pouvoir les utiliser dans un projet Excel créé à l'aide de Visual Studio.

Intitulé Description
Solutions Excel Explique comment créer des personnalisations au niveau du document et des compléments VSTO pour Microsoft Office Excel.
Utiliser des plages Fournit des exemples montrant comment effectuer des tâches courantes avec des plages.
Utiliser des feuilles de calcul Fournit des exemples montrant comment effectuer des tâches courantes avec des feuilles de calcul.
Utiliser des classeurs Fournit des exemples montrant comment effectuer des tâches courantes avec des classeurs.