Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

Wie kann ich Werte aus Excel im C# berechnen oder Tool finden, dass Eingabe & Berechnung abdeckt?
oehrle
myCSharp.de - Member



Dabei seit:
Beiträge: 404
Herkunft: Germany

Themenstarter:

Wie kann ich Werte aus Excel im C# berechnen oder Tool finden, dass Eingabe & Berechnung abdeckt?

beantworten | zitieren | melden

Hallo, ich habe mal eine Frage an das Forum.

Bei uns in der Firma wurde ein Exceldokument mit diversen Sheets erstellt.
Jedes Sheet bebzieht sich mit genauer Dokumentation auf Berechnungen.

Nun möchten wir das Excel in eine Applikation packen, die auf verschiedenen Rechnern verteilt, istalliert werden kann. Somit können auf den Rechnern die Berechnungen verwendet werden, die Ergebnisse können evetuell sofort in andere Applikationen per Datenaustausch übergeben werden.

Nun ist es halt das Problem, wenn ich die Berechnungen mit C# übernehmen würde, diese Berechungen wieder manuell in den Code übernehme. Gibt es Änderungen in der Excel, muss ich wieder in C# codieren, anpassen.

Schön wäre es, wenn man die Sachen aus Excel in eine Datenbank rüberladen könnte, und C# greift dort auf die Felder oder Berechnungen zu. Es ist mir schon bewusst, dass dann im C# etwas Intelligenz stecken muss.

Eventuell hatte schonmal jemand solch ein Problem, und hat für so eine Doku / Doku mit Berechnungen ein besseres Tool als Excel gefunden.

Wahrscheinblich wird es so sein, dass die Berechnungen von Excel manuell übernommen werden müssen, befürchte ich.
private Nachricht | Beiträge des Benutzers
thomas.at
myCSharp.de - Member



Dabei seit:
Beiträge: 102
Herkunft: Österreich / Wien

beantworten | zitieren | melden

Hallo

Ich hatte einmal ein ähnliches Problem. Es gibt von DevExpress eine Komponente namens "Spreadsheet". Diese kann Excelfiles direkt einlesen (mit allen Formeln, benannten Felder usw.) und funktioniert genauso wie Excel. Man kann sogar eine Oberfläche dazu erstellen, die wie Excel aussieht. Über C# kannst Du dann die Felder auslesen, die Berechnungen starten und was Du sonst noch alles brauchst.

mfG
Thomas
private Nachricht | Beiträge des Benutzers
oehrle
myCSharp.de - Member



Dabei seit:
Beiträge: 404
Herkunft: Germany

Themenstarter:

beantworten | zitieren | melden

Ok, habe das kurz angesehen, aber auch den Preis. Relativ teuer.
Gibt es da noch ähnliche Tools?
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 16205

beantworten | zitieren | melden

Naja; die UI Komponenten liegen preislich alle ähnlich. Google zeigt Dir hier quasi alle Alternativen, von denen es dutzende gibt. Einfach mal suchen ;-)
Rechne mal was Du pro Stunde kostest und dann siehst sich das nicht mal binnen weniger Tage relativiert.
- performance is a feature -

Microsoft MVP - @Website - @blog - @AzureStuttgart - github.com/BenjaminAbt
private Nachricht | Beiträge des Benutzers
Stefan.Haegele
myCSharp.de - Member

Avatar #avatar-3068.jpg


Dabei seit:
Beiträge: 463
Herkunft: Untermeitingen

beantworten | zitieren | melden

[offtopic] Gibt es eigentlich irgendetwas, was nicht schon jemand mit Excel erledigt hat? Excel ist der MacGyver unter der Software [/offtopic]
private Nachricht | Beiträge des Benutzers
MrSparkle
myCSharp.de - Team

Avatar #avatar-2159.gif


Dabei seit:
Beiträge: 5991
Herkunft: Leipzig

beantworten | zitieren | melden

Normalerweise würde man solche Excel-Mappen ja durch eine richtige Software ersetzen, und die Excel-Mappen dann wegschmeißen.

Wenn ihr jetzt zukünftig Excel-Mappen und eigens angefertigte Software parallel laufen lassen wollt, dann macht ihr die Situation ja schlimmer anstatt besser.

Wenn es so sein muß, dann wäre der erste Schritt zu überlegen, wie die beiden Systeme gepflegt werden sollen, wer in welchem System die Daten eingibt, und wo die ganzen Daten dann zusammengeführt werden sollen. Das geht aus deiner Erklärung nicht hervor. Daher ist die vorgeschlagene, rein UI-basierte, Lösung eventuell auch nicht die beste.

Wenn deine Anwendung Excel-Dateien verarbeiten soll, kannst du einfach den Open XML SDK verwenden. Damit kannst du Werte und Formeln aus Excel-Dateien auslesen (oder in Excel-Dateien schreiben, je nachdem in welcher Richtung die Verarbeitung funktionieren soll).

Wenn also die "Dokumentation und Berechnung" weiterhin in den Excel-Mappen gepflegt werden soll, dann kann deine Software die Dateien importieren, und die interne Darstellung aktualisieren. Und wenn es zukünftig in der Software gepflegt werden soll, dann könnte die Software die Excel-Dateien nach einer Datenänderung neu exportieren.

Ansonsten müßtest du das Problem und das Ziel mal genauer beschreiben.
Weeks of programming can save you hours of planning
private Nachricht | Beiträge des Benutzers
Taipi88
myCSharp.de - Member

Avatar #avatar-3220.jpg


Dabei seit:
Beiträge: 1044
Herkunft: Mainz

beantworten | zitieren | melden

Hi,

wolltest du nicht weg von Excel? Dann scheidet Excel doch auch als Formelmanager aus - sonst kannst du es doch gleich so lassen...

Ich finde es zwar gut solche Formeln nicht hart im Code zu verankern - aber dann würde ich mir an deiner Stelle lieber einen Formelparser suchen und dann eine Art ManagerInterface dafür zu kreieren, das eben auch Doku enthalten kann.

Ich persönlich finde das Projekt "Flee" da ganz interessant - könntest du dir ja mal anschauen: https://github.com/mparlak/Flee

LG
private Nachricht | Beiträge des Benutzers