web-dev-qa-db-fra.com

Comment référencer Microsoft.Office.Interop.Excel dll?

J'avais développé un système qui traite les feuilles Excel en 2006 en utilisant MS VS 2005. Maintenant, je ne peux pas utiliser la même référence avec MS VS 2012.

var app = new Microsoft.Office.Interop.Excel.Application();
Workbooks wbs = app.Workbooks;
45
Moe_Al

Utilisez NuGet (VS 2013 +):

Le moyen le plus simple dans toute version récente de Visual Studio consiste simplement à utiliser le gestionnaire de packages NuGet. (Même VS2013, avec l'extension Gestionnaire de paquets NuGet pour Visual Studio 201 .)

Cliquez avec le bouton droit de la souris sur "Références" et choisissez "Gérer les packages NuGet ..." , puis recherchez simplement Excel.

enter image description here


VS 2012:

Les anciennes versions de VS n’avaient pas accès à NuGet.

  • Faites un clic droit sur "Références" et sélectionnez "Ajouter une référence".
  • Sélectionnez "Extensions" sur la gauche.
  • Cherchez Microsoft.Office.Interop.Excel.
    (Notez que vous pouvez simplement taper "Excel" dans le champ de recherche situé dans le coin supérieur droit.)

VS2012/2013 References


VS 2008/2010:

  • Faites un clic droit sur "Références" et sélectionnez "Ajouter une référence".
  • Sélectionnez l'onglet ".NET".
  • Cherchez Microsoft.Office.Interop.Excel.

VS 2010 References

66
Grant

Vous pouvez également essayer de l'installer dans Visual Studio via le Gestionnaire de packages.

Exécutez Install-Package Microsoft.Office.Interop.Excel dans la console du package. Cela l'ajoutera automatiquement comme référence de projet.

L'utilisation est comme ça:

Using Excel=Microsoft.Office.Interop.Excel;
36
CYCLONE

Si vous avez VS 2013 Express et que vous ne trouvez pas l'espace de noms Microsoft.Office, essayez ceci ("Bibliothèque d'objets Microsoft Excel 12.0" si vous souhaitez utiliser Office 2007).

enter image description here

19
Muflix

En vous basant sur la réponse de Mulfix, si vous avez Visual Studio Community 2015, essayez Ajouter une référence ... -> COM -> Bibliothèques de types -> 'Bibliothèque d'objets Microsoft Excel 15.0'.

3
Daniel.Veneziano

Au lieu de relier précocement la référence, il existe un projet open source appelé NetOffice qui le résume de votre projet, ce qui simplifie considérablement la vie. De cette façon, vous n’avez pas à compter sur vos utilisateurs qu’une version spécifique d’Office est installée.

site NetOffice Codeplex.

2
LawMan

Vous devez vérifier quelle version d'Excel vous ciblez?

Si vous ciblez Excel 2010, utilisez la version 14 (selon la réponse à la capture d'écran de Grant), Excel 2007, utilisez la version 12. Vous ne pouvez pas prendre en charge Excel 2003 avec vS2012 car ils ne disposent pas de la DLL correcte Interop.

1
mas_oz2k1