myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
» Regeln
» Wie poste ich richtig?
» Forum-FAQ

Mitglieder
» Liste / Suche
» Wer ist wo online?

Ressourcen
» openbook: Visual C#
» openbook: OO
» Microsoft Docs

Team
» Kontakt
» Übersicht
» Wir über uns

» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Entwicklung » Office-Technologien » Einlesen und Berechnung bestimmter Werte aus Excel-Datei
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

Einlesen und Berechnung bestimmter Werte aus Excel-Datei

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
CDV# CDV# ist männlich
myCSharp.de-Mitglied

Dabei seit: 25.11.2018
Beiträge: 4
Entwicklungsumgebung: Visual studio
Herkunft: DE


CDV# ist offline

Einlesen und Berechnung bestimmter Werte aus Excel-Datei

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo,

Ich hoffe dass ich mit meiner Frage im richtigen Unterforum bin. Ich bin kein Neuling in der Programmierung mit C#, die Grundlagen kann ich. Jetzt möchte ich mit Visual Studio ein kleines Programm schreiben, weiss aber nicht genau wie ich anfangen soll.

Ich habe eine Tabelle in der verschiedene Werte stehen (MS office), diese lese ich mit dem visual studio ein, das klappt schonmal aber es wird alles was in der xls Datei steht eingelesen. Die Zahlen die sich in den Zeilen mit dem Text "Bestellmenge" und "Preis pro Stück" befinden möchte ich multiplizieren. Wie kann ich die Zellen ansprechen? Das Ergebnis soll in eine Textbox geschrieben werden und die fertige Tabelle als xml Datei gespeichert werden. Ich weiss dass man im Internet viele Beispiele findet, ich weiss im Moment nur nicht womit ich anfangen soll. Über ein paar tipps würde ich mich sehr freuen.

Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von CDV# am 25.11.2018 11:58.

Neuer Beitrag 25.11.2018 11:53 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Th69
myCSharp.de-Poweruser/ Experte

avatar-2578.jpg


Dabei seit: 01.04.2008
Beiträge: 3.671
Entwicklungsumgebung: Visual Studio 2015/17


Th69 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Wie genau liest du denn die Daten ein (mit welcher Technik/Technologie) und in welcher Datenstruktur?
Neuer Beitrag 25.11.2018 13:21 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
CDV# CDV# ist männlich
myCSharp.de-Mitglied

Dabei seit: 25.11.2018
Beiträge: 4
Entwicklungsumgebung: Visual studio
Herkunft: DE

Themenstarter Thema begonnen von CDV#

CDV# ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Ich mache das so: hier ein Codeausschnitt

C#-Code:
private void Openxls(string Table)
        {
            this.table = Table;
            path = Application.StartupPath +   "\\Bestellungen.xlsx";
            string pathConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties='Excel 12.0 XML;HDR=YES;';";
            OleDbConnection conn = new OleDbConnection(pathConn);
            OleDbDataAdapter myDataAdapter = new OleDbDataAdapter("Select * from [" + table + "$]", conn);
            DataTable dt = new DataTable();
            myDataAdapter.Fill(dt);
            dgvBestellmengen.DataSource = dt;

Die ausgefüllten Zeilen sollen in die Form

Produkt -> Beschreibung -> Lieferadresse -> Bestellmenge -> Preis pro Stück

mit den Zahlen möchte ich rechnen und am ende eine xml Datei erzeugen die ich danach woanders einlesen kann.
Neuer Beitrag 25.11.2018 21:31 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Th69
myCSharp.de-Poweruser/ Experte

avatar-2578.jpg


Dabei seit: 01.04.2008
Beiträge: 3.671
Entwicklungsumgebung: Visual Studio 2015/17


Th69 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Die Daten stehen ja dann in der DataTable-Variablen dt, d.h. du kannst darauf (wie bei einem zweidimensionalen Array) zugreifen:

C#-Code:
object wert = dt.Rows[zeile][spalte];
Neuer Beitrag 26.11.2018 09:14 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
CDV# CDV# ist männlich
myCSharp.de-Mitglied

Dabei seit: 25.11.2018
Beiträge: 4
Entwicklungsumgebung: Visual studio
Herkunft: DE

Themenstarter Thema begonnen von CDV#

CDV# ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Danke für die Antwort. Ja so könnte ich das machen. Kannst du mir noch einen tipp geben wie ich die Berechnungen machen kann? Wie man eine Formel einfügt und wie man Zahlen multipliziert weiss ich.

Meine Tabelle hat ca 200 Einträge, mal mehr mal weniger, es kommt auf die Anzahl der Bestellungen an die ist jeden Monat anders. In Excel kann ich die Formel die in einer Zelle steht mit der Maus nach unten ziehen um alle Werte der Spalten B und C zu berechnen. Wie macht man das mit C#?

Gruß
Neuer Beitrag 27.11.2018 14:20 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Th69
myCSharp.de-Poweruser/ Experte

avatar-2578.jpg


Dabei seit: 01.04.2008
Beiträge: 3.671
Entwicklungsumgebung: Visual Studio 2015/17


Th69 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Da mußt du dann schon eine Schleife verwenden, die alle Zeilen (Rows) durchläuft.
Neuer Beitrag 27.11.2018 14:49 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum Der Startbeitrag ist älter als ein Jahr.
Der letzte Beitrag ist älter als ein Jahr.
Antwort erstellen


© Copyright 2003-2020 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 08.08.2020 03:01