Visual Studio Tools pour Microsoft Office System
Vue d'ensemble du modèle objet Excel

Pour développer des solutions qui utilisent Microsoft Office Excel 2003, vous pouvez interagir avec les objets fournis par le modèle objet Excel. Cette rubrique présente les classes les plus importantes : Microsoft.Office.Interop.Excel.Application, Microsoft.Office.Interop.Excel.Workbook, Microsoft.Office.Interop.Excel.Worksheet et Microsoft.Office.Interop.Excel.Range. Dans la plupart des cas, le modèle objet émule directement l'interface utilisateur. Par exemple, 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 de travailler avec des cellules individuelles ou des groupes de cellules.

Microsoft Visual Studio 2005 Tools pour Microsoft Office System étend un grand nombre de ces objets natifs pour les doter de fonctionnalités supplémentaires, y compris des fonctionnalités de liaison de données et des événements. Ces objets étendus sont appelés contrôles hôtes. Par exemple, un objet Microsoft.Office.Interop.Excel.Range Excel natif est étendu dans un contrôle Microsoft.Office.Tools.Excel.NamedRange qui peut être lié à des données et exposer des événements. Pour plus d'informations sur les contrôles hôtes, consultez Vue d'ensemble des éléments et des contrôles hôtes.

Accès aux objets dans un projet Excel

Lorsque vous créez un nouveau projet Excel à l'aide de Visual Studio Tools pour Office, vous avez la possibilité de créer un nouveau projet d'application Excel ou de modèle Excel. Visual Studio Tools pour Office crée automatiquement les fichiers de code suivants dans votre nouveau projet Excel pour les projets de document et 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 globale, Globals, 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 du document. L'exemple suivant appelle la méthode PrintPreview de Sheet1 que le code soit placé dans la classe Sheet ou dans la classe Workbook :

Visual Basic
Globals.Sheet1.PrintPreview()
C#
Globals.Sheet1.PrintPreview(missing);

Comme les données dans un document Excel sont hautement structurées, le modèle objet est également hiérarchique et simple. Excel fournit des centaines d'objets avec lesquels il vous sera possible d'interagir, mais pour prendre un bon départ avec le modèle objet, il vous suffit de vous concentrer sur un très petit sous-ensemble des objets disponibles. Pour n'en citer que quelques-uns :

  • Objet Application

  • Workbook, objet

  • Worksheet, objet

  • Objet Range

La majeure partie du travail effectué avec Excel tourne autour de ces quatre classes 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'exécution de l'application, les options appliquées à cette instance et les objets de l'utilisateur actuel ouverts dans l'instance.

RemarqueRemarque

Vous ne devez pas attribuer la valeur false à la propriété EnableEvents de l'objet Application dans Excel. 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.

Workbook, objet

La classe Microsoft.Office.Interop.Excel.Workbook représente un classeur unique dans l'application Excel. Visual Studio Tools pour Office étend la classe Microsoft.Office.Interop.Excel.Workbook en fournissant la classe Microsoft.Office.Tools.Excel.Workbook qui vous donne l'accès à tous les membres de la collection Workbooks, ainsi que des fonctionnalités de liaison de données et des événements supplémentaires.

Worksheet, objet

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

Excel fournit une collection Sheets comme propriété d'un objet Microsoft.Office.Interop.Excel.Workbook, mais il n'y a pas de classe Sheet dans Excel. À la place, chaque membre de la collection Sheets est soit Microsoft.Office.Interop.Excel.Worksheet, soit un objet Microsoft.Office.Interop.Excel.Chart. Visual Studio Tools pour Office fournit un élément hôte Microsoft.Office.Tools.Excel.Worksheet et crée trois instances : Sheet1, Sheet2 et Sheet3, lors de la création du projet. L'accès à n'importe quelle feuille s'effectue par le biais de la référence Globals. Visual Studio Tools pour Office étend l'objet Microsoft.Office.Interop.Excel.Worksheet, en fournissant l'élément hôte Microsoft.Office.Tools.Excel.Worksheet.

Objet Range

L'objet Microsoft.Office.Interop.Excel.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 de cellules contenant un ou plusieurs blocs de cellules (qui peuvent être ou ne pas être contigus) ou même un groupe de cellules sur plusieurs feuilles.

Visual Studio Tools pour Office introduit deux contrôles hôtes de plage : le contrôle Microsoft.Office.Tools.Excel.NamedRange et le contrôle Microsoft.Office.Tools.Excel.XMLMappedRange. Pour plus d'informations sur les contrôles hôtes, consultez Vue d'ensemble des éléments et des contrôles hôtes.

Objets étendus

Il est important de comprendre les différences entre les objets natifs fournis par le modèle objet Excel et les objets étendus (éléments hôtes et contrôles hôtes) fournis par Visual Studio Tools pour Office, car vous disposez de ces deux types d'objets pour votre projet. Il convient de garder à l'esprit les points suivants :

  • Au moment du design. Lorsque vous ajoutez des objets Excel étendus au moment du design, ils sont créés automatiquement sous la forme d'éléments hôtes et de contrôles hôtes. Par exemple, si vous ajoutez une liste à une feuille de calcul dans le concepteur, le code est automatiquement généré pour étendre la liste dans un contrôle Microsoft.Office.Tools.Excel.ListObject.

  • Au moment de l'exécution. Les éléments hôtes ne sont pas automatiquement créés au moment de l'exécution. Si vous ajoutez des classeurs, des feuilles de calcul ou des feuilles de graphique au moment de l'exécution, ils sont des objets Excel natifs et ne disposent pas des fonctions supplémentaires fournies par les éléments hôtes. Vous pouvez ajouter par programme un grand nombre de contrôles hôtes. Pour plus d'informations, consultez Vue d'ensemble des éléments et des contrôles hôtes.

  • Liaison de données et événements. Les éléments hôtes et contrôles hôtes comportent des fonctionnalités de liaison de données et des événements dont les objets natifs ne disposent pas.

  • Types. Les objets Excel natifs utilisent les types définis dans Microsoft.Office.Interop.Excel, alors que les éléments hôtes et contrôles hôtes utilisent les types regroupés en agrégats définis dans Microsoft.Office.Tools.Excel.

Cette rubrique a présenté les classes les plus importantes : Application, Workbook, Worksheet et Range. Il existe beaucoup d'autres classes susceptibles de vous être utiles, telles que PivotTable et Chart. Visual Studio Tools pour Office étend nombre de ces classes en étendant la fonctionnalité pour inclure la liaison de données et les événements. Le modèle objet vous permet d'accomplir toute tâche automatisée dont vous avez besoin.

Voir aussi

Mots clés :


Page view tracker