2010-12-08 9 views
0

im Schreiben einer Anwendung mit Visual Studio 2010 Express Edition. Ich habe ein Problem mit der Excel-Automatisierung. Ich habe eine COM-Referenz zur Microsoft Excel 12.0-Objektbibliothek hinzugefügt. Er fügte hinzu folgenden Referenzen:C# -Projekt zeigt keine Excel-COM-Referenz

using Microsoft.Office.Interop.Excel; 

Dann i von microsoft ein Code-Snippet nahm:

Microsoft.Office.Core 
Microsoft.Office.Interop.Excel 
VBIDE 

ich auch eine using-Klausel hinzugefügt

m_objExcel = new Excel.Application(); 
m_objBooks = (Excel.Workbooks)m_objExcel.Workbooks; 
m_objBook = (Excel._Workbook)(m_objBooks.Add(m_objOpt)); 

und unterstreicht Excel und ruft:

Der Typ oder nam espace Name 'Excel' konnte nicht gefunden werden (möglicherweise fehlt eine using-Direktive oder eine Baugruppe Referenz?)

Ich habe Office 2007 Professional Plus und die "Interoperabilitätskomponente für .NET 2.0 Microsoft Forms" (Entschuldigung, Übersetzung von Polnisch) installiert. Ziel-Framework ist das .NET 4-Client-Profil.

Irgendwelche Ideen, was kann falsch sein?

Antwort

9

Versuchen Sie, Ihre using Wechsel zu:

using Excel = Microsoft.Office.Interop.Excel; 

auf diese Weise Excel wird ein Alias ​​für den vollständigen Namespace sein, die den Rest des Codes zu erwarten scheint.

+4

Ich frage mich, wie viele tausend Menschen dieses kleine Problem beim Lesen von Online-Beispielen verwirrt wurden! – tbone

0

Können Sie dies versuchen ... mit Excel = Microsoft.Office.Interop.Excel; (wie gefunden von here)