Partager via


Programmation avec Visual Basic et Visual C# dans les solutions Office

Vous pouvez créer des solutions Office à l'aide de Visual Basic ou Visual C#. Étant donné que les modèles objets Microsoft Office ont été conçus pour être utilisés avec Microsoft Visual Basic pour Applications (VBA), les développeurs Visual Basic peuvent facilement travailler avec les objets exposés par les applications Microsoft Office. Dans Visual Studio 2010, les développeurs Visual C# peuvent utiliser la plupart des fonctionnalités utilisées par les développeurs Visual Basic, mais dans certains cas, ils doivent écrire du code supplémentaire pour utiliser les modèles objet Office. Il existe également quelques différences entre les fonctionnalités de programmation de base du développement Office et celles du code managé écrit dans Visual Basic et C#.

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.

Principales différences entre Visual Basic et Visual C#

Le tableau suivant indique les principales différences entre Visual Basic et Visual C# dans le développement Office.

Fonctionnalité

Description

Prise en charge de Visual Basic

Prise en charge de Visual C#

Paramètres facultatifs

De nombreuses méthodes Microsoft Office ont des paramètres qui ne sont pas requis lorsque vous appelez la méthode. Si aucune valeur n'est transmise pour le paramètre, une valeur par défaut est utilisée.

Visual Basic prend en charge les paramètres facultatifs.

Visual C# prend en charge les paramètres optionnels dans la plupart des cas. Pour plus d'informations, consultez Paramètres optionnels dans les solutions Office.

Passage de paramètres par référence

Dans la plupart des assemblys PIA (Primary Interop Assembly) Microsoft Office, les paramètres facultatifs peuvent être passés par valeur. Toutefois, dans certains assemblys PIA, les paramètres facultatifs qui acceptent les types référence doivent être passés par référence.

Pour plus d'informations sur les paramètres de type valeur et référence, consultez Passage d'un argument par valeur et par référence (Visual Basic) (pour Visual Basic) et Passage de paramètres (Guide de programmation C#).

Aucun travail supplémentaire n'est nécessaire pour passer des paramètres par référence. Le compilateur Visual Basic passe automatiquement les paramètres par référence lorsque nécessaire.

Dans la plupart des cas, le compilateur Visual C# passe automatiquement les paramètres par référence lorsque cela est nécessaire. Pour plus d'informations, consultez Paramètres optionnels dans les solutions Office.

Propriétés paramétrées

Certaines propriétés acceptent des paramètres et agissent comme des fonctions en lecture seule.

Visual Basic prend en charge les propriétés qui acceptent des paramètres.

Visual C# prend en charge les propriétés qui acceptent des paramètres.

Liaison tardive

La liaison tardive implique de déterminer les propriétés d'objets au moment de l'exécution, au lieu d'effectuer un cast de variables en type d'objet au moment du design.

Visual Basic exécute la liaison tardive lorsque Option Strict est désactivé. Lorsque Option Strict est activé, vous devez convertir explicitement les objets et utiliser les types figurant dans l'espace de noms System.Reflection pour accéder aux membres à liaison tardive. Pour plus d'informations, consultez Liaison tardive dans les solutions Office.

Visual C# exécute la liaison tardive dans les projets qui ciblent .NET Framework 4. Dans les projets qui ciblent .NET Framework 3.5, vous devez caster explicitement les objets et utiliser les types figurant dans l'espace de noms System.Reflection pour accéder aux membres à liaison tardive. Pour plus d'informations, consultez Liaison tardive dans les solutions Office.

Principales différences entre le développement Office et le code managé

Le tableau suivant affiche les principales différences entre le développement Office et le code managé écrit en Visual Basic ou Visual C#.

Fonctionnalité

Description

Prise en charge de Visual Basic et Visual C#

Index de tableau

Les limites d'index de tableau inférieures des collections dans les applications Microsoft Office commencent par 1. Visual Basic et Visual C# utilisent des tableaux basés sur 0. Pour plus d'informations, consultez Tableaux (guide de programmation C#) et Tableaux dans Visual Basic.

Pour accéder au premier élément d'une collection dans le modèle objet d'une application Microsoft Office, utilisez l'index 1 au lieu de 0.

Voir aussi

Tâches

Comment : cibler les applications Office via les assemblys PIA (Primary Interop Assembly)

Liaison tardive dans les solutions Office

Référence

Réflexion (C# et Visual Basic)

Concepts

Écriture de code dans les solutions Office

Paramètres optionnels dans les solutions Office