Wie schreibt man durch Öffnen es programmatisch mit Microsoft.Office.Interop.Excel dll übertreffen?

StackOverflow https://stackoverflow.com/questions/1648125

  •  22-07-2019
  •  | 
  •  

Frage

Ich möchte Microsoft.Office.Interop.Excel dll verwenden, um die Daten in Excel-Blatt zu schreiben. Ich habe einen Code:

if (System.IO.File.Exists(strFileName))
{
    System.IO.File.SetAttributes(strFileName, FileAttributes.Normal);
    System.IO.File.Delete(strFileName);
}

// Open an instance of excel. Create a new workbook.
// A workbook by default has three sheets, so if you just want 
//a single one, delete sheet 2 and 3

Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
Excel._Workbook xlWB = (Excel._Workbook)xlApp.Workbooks.Add(Missing.Value);

Excel._Worksheet xlSheet = (Excel._Worksheet)xlWB.Sheets[1];
((Excel._Worksheet)xlWB.Sheets[2]).Delete();
((Excel._Worksheet)xlWB.Sheets[2]).Delete();

xlSheet.Name = strSheetName;

// Write a value into A1
xlSheet.Cells[2, 1] = "Tags";
xlSheet.Cells[2, 2] = "Leak Test";
xlSheet.Cells[2, 3] = "FIR";
xlSheet.Cells[2, 4] = "SOP";

xlWB.SaveAs(strFileName, Missing.Value, Missing.Value, Missing.Value, 
Missing.Value,Missing.Value, 
Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, Missing.Value, 
Missing.Value, Missing.Value, Missing.Value, Missing.Value);
xlApp.Quit();

// Release the COM object, set the Excel variables to Null, and tell the 
//Garbage Collector to do its thing
System.Runtime.InteropServices.Marshal.ReleaseComObject(xlSheet);
System.Runtime.InteropServices.Marshal.ReleaseComObject(xlWB);
System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApp);

xlSheet = null;
xlWB = null;
xlApp = null;

Jetzt will ich öffnen Sie die Datei aus dem Pfad Excel vorhandene & setzen Sie dann die einige Daten in die Excel-Tabelle, die wir zur Verfügung stellte Namen & dann wird es auf bestimmten Pfad aus programmatisch gespeichert werden.

Bitte antworten Sie mir die Quelle falls vorhanden, das die vorhandene Excel-Datei öffnen kann und dass anhängen werden kann und mit einem anderen Namen speichern.

Viele Grüße, Girish

War es hilfreich?

Lösung

Siehe hier für Informationen .

Andere Tipps

ExcelPackage wird nicht mehr gepflegt. Es scheint ein paar Fehler zu haben. Lese Kommentar da, ich habe festgestellt, http://epplus.codeplex.com/

Es baut auf ExcelPackage und erben sie Lizenzen (GPL), so kann es Ihre Anforderung nicht gerecht wird.

Wenn Sie die 2007-Version von Excel verwenden, würde ich empfehlen die Verwendung von ExcelPackage statt - es ist eine Implementierung des OpenXML-Standard, es ist viel schneller und viel weniger chaotisch als COM-Interop, und Sie können es auf einem Computer ausführen, die haben nicht einmal Excel (Office) installiert ist, wie auf dem Webserver.

Sehr empfehlenswert - aber beschränkt auf Excel 2007 und bis

.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top