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;
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.
VS 2012:
Les anciennes versions de VS n’avaient pas accès à NuGet.
Microsoft.Office.Interop.Excel
.VS 2008/2010:
Microsoft.Office.Interop.Excel
.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;
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).
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'.
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.
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.