2016-08-04 16 views
0

Ich schrieb ein Programm, dies zu tun, aber eine Ausnahme bekam sagenMalvorlagen Excel-Zellen mit C# ohne Microsoft Office installiert?

Retrieving the COM class factory for component with 
CLSID {00024500-0000-0000-C000-000000000046} 
failed due to the following error: 80040154 
Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)). 

Wie kann ich diese Ausnahme beheben, und wie kann ich C# Blatt Zellen Farbe Excel?

Unten ist der Code:

using Excel = Microsoft.Office.Interop.Excel; 
using System.Reflection; 
using System.Windows; 
using System.Drawing; 
using Microsoft.Office.Interop.Excel; 
using System; 

namespace Project32 
{ 
    public class Class1 
    { 
     static void Main() 
     { 
      Application excel = new Application(); 
      Workbook wb = excel.Workbooks.Open(@"C:\Users\mvmurthy\Downloads\IDBDeviceReport.rdlc"); 
      Worksheet ws = wb.Worksheets[1]; 
      ws.Cells[1, 1].Interior.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Red); 
     } 
    } 
} 
+0

Was ist die Frage? Geht es um die Ausnahme, die Sie bekommen, oder um den Titel Ihres Posts? –

+0

Gibt es eine Lösung, um diese Ausnahme zu lösen, sonst wäre die Lösung für den Titel in Ordnung – manvitha

Antwort

3

Wenn Sie den Microsoft.Office.Interop Namespace verwenden das jeweilige Microsoft Office-Produkt auf dem Computer hat zu „automatisieren“ Excel über COM dann installiert werden.

Andernfalls müssen Sie zu einer Art von Drittanbieter-Bibliothek wechseln, mit der Sie die Dateien direkt lesen und schreiben können, ohne von der Microsoft Office-Software abhängig zu sein.

Mögliche Bibliotheken zu berücksichtigen:

  • EPPlus
  • OpenXML
  • ClosedXML