Quelle référence dois-je utiliser Microsoft.Office.Interop.Excel dans .NET?

Je suis intéressé par l’utilisation de C # pour manipuler / automatiser des fichiers Excel.

Après avoir navigué sur le Web, j’ai trouvé VSTO mais il semble que vous ne puissiez pas l’utiliser dans Visual Studio Express Edition, donc je ne peux pas l’utiliser.

Il y a quelques minutes, j’ai remarqué une question sur ce site qui utilisait cet espace de noms dans son code:

Microsoft.Office.Interop.Excel

Alors je me demande si tout ce que je dois utiliser c’est append la référence nécessaire et si oui, quelle référence append?

METTRE À JOUR

J’ai installé “Primary Interop Assemblies” comme suggéré comme réponse acceptée, mais pour une raison quelconque, ils manquent toujours dans la boîte de dialog Add Reference sous “.NET” mais ils sont présents dans GAC.

Donc, je viens d’append la référence en utilisant “Parcourir” et situé Microsoft.Office.Interop.Excel.dll dans le dossier GAC.

Mais si vous cherchez des questions similaires sur ce site concernant l’ajout de références de GAC, il semble que cela ne soit pas recommandé.

Mise à jour (merci utilisateur2347528)

Ces assemblages sont disponibles sous forme de packages NuGet, ce qui est beaucoup plus facile que ma réponse originale.

Vous pouvez l’installer en cliquant avec le bouton droit sur Références dans votre projet et en sélectionnant Gérer les packages NuGet … et en recherchant l’un des packages répertoriés ci-dessous ou en utilisant la console du gestionnaire de packages:

 PM> Install-Package Microsoft.Office.Interop.Excel 
  • Microsoft.Office.Interop.Excel
  • Microsoft.Office.Interop.Word
  • Microsoft.Office.Interop.Outlook
  • Microsoft.Office.Interop.PowerPoint
  • Microsoft.Office.Interop.Graph

Celles-ci sont disponibles sous forme de “assembleurs d’interopérabilité primaires”, qui peuvent être installés avec Office ou téléchargés et installés séparément. Comment: installer les assemblys d’interopérabilité Office principal .

Une fois ceux-ci installés, vous pouvez les référencer dans votre projet dans la boîte de dialog Ajouter une référence, sous .NET. Si vous ne voyez pas ces assemblys Microsoft.Office.Interop répertoriés, ils ne sont pas encore installés. Installez-les depuis votre configuration ou téléchargez-les et installez-les séparément (voir mon lien ci-dessus pour les téléchargements).

Juste eu ce problème moi-même et accepté la réponse ne m’a pas aidé mais je l’ai résolu avec:

Add reference > Browse > C: > Windows > assembly > GAC > Microsoft.Office.Interop.Excel > 12.0.0.0_etc > Microsoft.Office.Interop.Excel.dll

Les réponses ne m’ont pas aidé à résoudre mon problème, je ne pouvais pas trouver (ni parcourir) les assemblages même si je les ai installés à l’aide du programme d’installation Microsoft msi. Pour moi, l’assembly Excel se trouve sous C:\Windows\assembly\GAC_MSIL\Microsoft.Office.Interop.Excel\14.0.0.0__71e9bce111e9429c\Microsoft.Office.Interop.Excel.dll

Ajoutez simplement la référence de Microsoft.Office.Interop.Excel .

Il comprend des classes liées à MicroSoft Excel, pas besoin d’append plus de références.

Je suppose que ce que vous essayez de faire est d’append Microsoft.Office.Interop.Excel avec using statement sans append sa référence dans votre application, dans ce cas il ne sera pas trouvé. Avant de l’appeler avec l’ using déclaration, vous devez append une référence à votre application. Cliquez avec le bouton droit sur References et ajoutez la référence Excel Interop .

Ajoutez une référence> Parcourir> C:> Windows> assembly> GAC> Microsoft.Office.Interop.Excel> 12.0.0.0_wasd ..> Microsoft.Office.Interop.Excel.dll

Si Microsoft Office est installé, vous devriez pouvoir append une référence à Interop.Excel.

Par exemple, le PC sur lequel je tape sur ce fichier a MSVS 2010 C # Express et Office 2010. Je peux append une référence à Microsoft.Office.Interop.Excel 11.0.0.0.

‘J’espère que cela pourra aider

son dans le composant com, nommé: “Microsoft Office 14 Object Library”

La meilleure option depuis Office 2007 consiste à utiliser Open XML SDK pour cela. Nous avons utilisé Word.Interop mais, parfois, il est déconseillé à Microsoft de l’utiliser comme format de document côté serveur. Ainsi, Open XML SDK vous permet de créer très facilement des documents Word au format DOCX et Open XML. Cela vous permet de bien fonctionner avec la scabilité, la confiance (les fichiers, s’ils sont corrompus, peuvent être reconstruits) et d’autres caractéristiques très fines.

Voici la solution super solide, vous avez juste besoin d’avoir excell.dll dans votre dossier Debug / Release. La mine fait 77 824 octets, je l’ai téléchargée en tant que fichier, cela explique également pourquoi certaines personnes ont compilé Debug mais pas Release ou vice versa.

Trento

Je viens d’avoir le même problème, mais aucune de ces réponses ne m’a aidé. J’ai trouvé le dll sur mon pc à l’endroit que Mostey a noté: ( C:\Windows\assembly\GAC_MSIL\Microsoft.Office.Interop.Excel\14.0.0.0__71e9bce111e9429c\Microsoft.Office.Interop.Excel.dll ), mais ceci n’est pas celui qui a été référencé dans le projet que j’essayais de construire.

La référence dans notre projet dans Visual Studio 2012 indiquait C:\Program Files (x86)\Microsoft Visual Studio 11.0\Visual Studio Tools for Office\ . Cet endroit était vide pour moi, mais cela fonctionnait très bien pour tout le monde. Il a fallu un certain nombre d’essais, mais j’ai finalement trouvé un installateur actif. J’espère que cela sauve les autres le même tracas!

-> Programme d’installation d’Office Tools Bundle pour VS2012 <-

Cela se trouvait sur la page Documentation et téléchargement Office . Faites défiler jusqu’à Tools Downloads . Il y a aussi actuellement un pour VS2013.

Je l’ai trouvé sous Assemblies-> Extensions dans VS2013.

Ajouter une référence

1.Télécharger et installer: Microsoft Office Developer Tools

2.Ajouter les références de:

C: \ Program Files (x86) \ Microsoft Visual Studio 11.0 \ Outils Visual Studio pour Office \ PIA \ Office15

J’ai eu le même problème et Microsoft.Office.Interop n’apparaissait pas dans l’option “Ajouter une référence” une fois que j’ai mis à jour VS2012 vers VS2015. J’ai essentiellement réparé l’installation ( Panneau de configuration> Programmes et fonctionnalités> VS 2012> Clic droit sur Modifier> Réparer ) et ajouté le composant Microsoft Office. Après cela, la même solution a commencé à fonctionner.