Servus,
ich habe momentan das Problem, dass ich gerne eine Excel auslesen möchte und einige Werte in eine Klasse speichern möchte, jedoch nie weiß wie.
Meine Excel sieht wie folgt aus:
Überschrift:
Excel mit wichtigen Werten
VALUE1 **VALUE2 ****VALUE3 **VALUE4
1 Test beispiel Kommentar
2 Test beispiel Kommentar
ich würde gerne die Excel ab Value1 einlesen und nur die Werte unter Value1 (1,2) und Value 3(beispiel,beispiel) in eine Klasse abspeichern.
Leider bekomme ich es nicht so hin..
"Geht nicht" ist keine Fehlermeldung, mit dem irgendwer was anfangen kann 😃
Siehe auch [Hinweis] Wie poste ich richtig?
Was hast Du versucht? Wo hängst Du?
Verwendest Du OpenXML?
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Servus,
welches Format hat die Excel-Datei? *.xlsx oder *.csv
Am einfachsten wäre wohl die Verwendung des CSV-Formats, am schwierigsten die Verwendung von OpenXML (persönliche Meinung, da man leere Zellen handeln muß)
Gängige Praxis für *.xlsx ist die Verwendung von Interop.Excel.
Es gibt von Microsoft ein Beispiel nur leider finde ich den Link dazu gerade nicht.
Gängige Praxis für *.xlsx ist die Verwendung von Interop.Excel.
Interop setzt eine Installation von Excel voraus, daher ist Open XML inzwischen die "gängige Praxis". Keine Ahnung, was du mit "leere Zellen handeln" meinst.
Weeks of programming can save you hours of planning
es ist eine xlsx.
Das herauslesen der kompletten Datei habe ich mit https://coderwall.com/p/app3ya/read-excel-file-in-c hinbekommen.
aber ich brauche in meinem Fall ja nur alle Werte unter Value1 und Value2..
Wo genau liegt jetzt dein Problem? Was hast du probiert, was funktioniert dabei nicht?
Bitte beachte [Hinweis] Wie poste ich richtig?, besonders Punkt 5.
Weeks of programming can save you hours of planning
Dein Link zeigt halt Interop. Das ist völlig veraltet und der gängige Weg ist OpenXML.
Ansonsten beachte was MrSparkle auch schon sagte.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Hallo,
hier findest du alles, was du brauchst:
Willkommen beim Open XML SDK 2.5 für Office
Tabellenkalkulationen (Open XML SDK)
Gängige Praxis für *.xlsx ist die Verwendung von Interop.Excel.
Interop setzt eine Installation von Excel voraus, daher ist Open XML inzwischen die "gängige Praxis". Keine Ahnung, was du mit "leere Zellen handeln" meinst.){gray}
Okay, okay, im professionellen Bereich sicherlich, aber nicht im Hobbybereich, dem 98 Prozent der Forumsmitglieder hier angehören!
Wenn ich tabellarische Daten habe und diese leere Zellen enthalten, dann verschieben sich die Daten beim zeilenweisen auslesen. Und das muss man beachten!
aber nicht im Hobbybereich, dem 98 Prozent der Forumsmitglieder hier angehören!
Dann hast Du eine andere Statistik als ich/wir. Was hast Du denn für eine Datenquelle? 😃
Ich möchte keine internen Zahlen nennen; aber unsere Datenbasis sagt, dass die überwiegende Zahl der Mitglieder hier primär geschäftlich unterwegs ist.
Davon abgesehen ist es egal ob Business oder Privat: OpenXML ist der ganz klar empfohlene und gängige Weg, offiziell wie auch der Meinung der Community.
Klar, das heisst nicht, dass man (aktuell noch) Interop nicht auch verwenden kann. Aber der Weg geht seit Jahren weg von Interop.
Und spätestens wenn Office seine Basis wechselt, worauf alle Zeichen hindeuten, wars das mit Interop.
Im Endeffekt empfiehlst also einen Weg, der mit aller höchster Wahrscheinlichkeit keine Zukunft hat.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Oder wenn möglich, nimmt man eine entsprechende Lib die sich bereits um alles kümmert.
Wir arbeiten bei Excelmappen immer mit Aspose.Cells, was dann zwar ein paar Euros kostet, aber auch entsprechend alle gängigen Formate kennt und verarbeiten kann.
Somit spart man sich einiges an gebastel, was ggf. mit der nächsten Office Version vielleicht nicht mal mehr funktioniert.
T-Virus
Developer, Developer, Developer, Developer....
99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.