2009-07-23 4 views

Antwort

0

Von Ihrer Frage, ich nehme an, Sie haben bereits JET/OLEDB ausgeschlossen, um auf die Tabellendaten zuzugreifen, die nur wirklich mit Tabellendaten arbeiten. Sie benötigen also eine Möglichkeit, auf einzelne Zellen usw. zuzugreifen.

Sie können öffnen die Excel-Dateien mit Excel (über Interop), wie ich bin sicher, jemand wird vorschlagen. Aber wenn Sie dies vermeiden können, sollten Sie - es gibt alle möglichen Probleme damit (es ist flockig, und Sie werden keine Hilfe von Microsoft bekommen, da sie grundsätzlich sagen, tun Sie es nicht).

Sie können dies vermeiden, wenn Sie Ihre Excel-Dateien als XML speichern können.

  • Wenn Sie mit Excel 2003 können Sie Speichern unter „XML-Kalkulationstabelle“, die funktional äquivalent zu einer normalen XLS-Datei, mit der Ausnahme, dass es nicht Diagramme oder Makrocode enthalten. Andere als das, es sieht genau gleich für einen Benutzer - und es ist viel einfacher zu in Code verarbeiten.

  • Wenn Sie mit Excel 2007 dann das native Dateiformat ist bereits XML (wenn auch in einer ZIP-Datei gespeichert), und wieder können Sie das in Code verarbeiten. Es gibt viele Beispiele online.

+0

Hallo Gary, Danke. Ich werde es versuchen. Ich fand jedoch eine einfache Lösung. Ich schreibe ein Makro, das die Daten von allen Blättern sammelt und in Tabellenform schreibt. Ich werde JET/OLEDB die Daten lesen und in die Datenbank einfügen. – raj

0

Sie können die Open XML SDK verwenden, um die Daten zu bekommen Sie brauchen:

http://blogs.msdn.com/excel/archive/2008/11/25/using-the-open-xml-sdk-to-work-with-excel-files.aspx

Wenn Sie Sharepoint Excel Services haben Sie verwenden könnten. Wäre es wahrscheinlich nicht wert, es nur für diesen Job zu kaufen.

Sie könnten auch Excel über Excel-Interop verwenden, obwohl Sie auf Lizenzprobleme und Speicherlecks achten müssen.

Ich würde das Open XML SDK empfehlen.

0

können Sie xls und xlsx Arbeitsmappen öffnen, erhalten Sie einen Bereich in eine DataTable, oder durchlaufen Sie die Zellen und erhalten Sie die Rohdaten oder den formatierten Text jeder Zelle.

Sie können ASP.NET-Beispiele (C# oder VB) here anzeigen und eine kostenlose Testversion herunterladen here.

Haftungsausschluss: Ich besitze SpreadsheetGear LLC

Verwandte Themen