J'ai essayé de suivre Comment ouvrir un fichier Excel en C # tutoriel, c'est-à-dire ajouté une référence sur l'onglet Com
à Microsoft Office 14.0 Object Library
et a essayé de compiler du code:
using Excel = Microsoft.Office.Interop.Excel;
//...
Excel.Application xlApp;
Excel.Workbook xlWorkBook;
Excel.Worksheet xlWorkSheet;
xlApp = new Excel.ApplicationClass();//error here
//...
et a fait face à une erreur de compilation, disant
Aucun constructeur n'est défini pour le type Microsoft.Office.Interop.Excel.ApplicationClass.
Qu'est-ce que je rate?
Essaye ça:
Excel._Application xlApp = new Excel.Application();
Utilisez ce qui suit pour l'ouvrir:
xlApp = CreateObject("Excel.Application");
CreateObject crée et renvoie une référence à un objet COM. La documentation peut être trouvée ici:
http://msdn.Microsoft.com/en-us/library/7t9k08y5%28v=vs.71%29.aspx
Si vous utilisez C # 4.0 (.NET 4), vous pouvez utiliser une syntaxe beaucoup plus simple
var app = new Application( );
var workbook = app.Workbooks.Open("test.xls");
En ce qui concerne var: cela vous facilite le travail car C # C décide du type à choisir et à choisir. Si vous êtes intéressé, vous pouvez lire les styles dynamique et var.
N'oubliez pas que l'interopérabilité avant C # 4.0 est un phénomène totalement différent et comment C # était utilisé pour gérer les objets Microsoft.
juste pour que vous sachiez à quel point c'est différent, voici comment vous auriez dû le coder avant C # 4.0 pour parler à un document Word.
object fileName = @"WordFile.docx";
object missing = System.Reflection.Missing.Value;
object readOnly = true;
var doc = wordApp.Documents.Open(ref fileName, ref missing, ref readOnly,
ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing);