|
|
Exceldatei einlesen und Daten verarbeiten - OOP |
|
stempf |
Forum-Anfänger
|
|
Beiträge: 18
|
|
|
|
Anmeldedatum: 19.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2017a
|
|
|
|
|
|
Verfasst am: 19.12.2020, 17:47
Titel: Exceldatei einlesen und Daten verarbeiten - OOP
|
|
|
|
|
Hallo zusammen!
Ich bin noch kompletter Matlab Neuling und muss jetzt für meine Abschlussarbeit in Matlab ein Tool programmieren.
Ich habe eine Excelliste in der Produkte hinterlegt sind. Zu den Produkten gibt es Preise, Technische Größe und Zubehör. Im Anhang ist ein Ausschnitt der Excelliste zu sehen.
Meine Frage ist jetzt:
Wie kann ich diese Liste am sinnvollsten einlesen und verarbeiten?
Wie gehe ich am besten vor bei der Objekt orientierten Programmierung vor? Welche Klassen sollte man erstellen? Funktion erstellen für das einlesen?
Ich will nach bestimmten Kriterien in der Liste suchen( im Bild sieht man die Zahlen 1,2,3,4 das sind meine Zahlen wonach ich filtern will)
In dem tool sollen dann später verschiedene Varianten der Produkte zusammengestellt werden und die Preise angezeigt werden
Wäre echt super wenn mir da einer weiterhelfen könnte um einen guten Start zu haben!
Viele Grüße
Beschreibung: |
|
Download |
Dateiname: |
Ausschnitt Excel Datei.png |
Dateigröße: |
1.4 MB |
Heruntergeladen: |
338 mal |
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 19.12.2020, 22:49
Titel:
|
|
Hallo,
ich würde die Daten erst mal mit
readtable
einlesen, ggf. unter vorheriger Verwendung von
detectImportOptions
.
Das Suchen nach Kriterien geht mit logischer Indizierung.
(Selbst geschriebene) objektorientierte Programmierung scheint mir hier überzogen. Zur Zusammenstellung wird man wohl eine Benutzeroberfläche brauchen, dazu würde ich App Designer verwenden.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
stempf |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 18
|
|
|
|
Anmeldedatum: 19.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2017a
|
|
|
|
|
|
Verfasst am: 20.12.2020, 12:05
Titel:
|
|
Danke für die schnelle antwort!
Wie kann ich kann ich dann mit den einzelnen Einträgen der Liste rechnen?
Wenn ich mir Einträge der Liste in eine Variable speicher (über Preis1 = Datei(2,3))
kann ich mit diesen keine rechenoperationen durchführen. ich glaube weil diese auch in einem Table gespeichert werden und nicht in einer Matrix ?!
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 20.12.2020, 12:55
Titel:
|
|
Hallo,
genau. Wenn du mit Daten aus einem Table rechnen willst, mit { } oder . indizieren.
https://de.mathworks.com/help/matla.....cess-data-in-a-table.html
Der ursprünglichen Beschreibung zufolge dürfte dir vor allem dieses Beispiel in dem Link helfen: "Extract Data Using Dot Notation and Logical Values".
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
stempf |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 18
|
|
|
|
Anmeldedatum: 19.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2017a
|
|
|
|
|
|
Verfasst am: 21.12.2020, 13:52
Titel:
|
|
Hallo,
muss ich die Exceltabelle dann als struct einlesen um mit dem .() Operator zu suchen?
Und nochmal eine Frage zur Objektorientierten Programmierung... diese wird von meinem Betreuer/Professor gefordert weil meine eingelesene Exceldatei erweitert werden soll und somit dynamisch wächst.
Wie gehe ich da am besten vor? Erstelle ich dann bestimmte Klassen für die einzelnen Einträge der Excelliste?
Grüße
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 21.12.2020, 16:22
Titel:
|
|
Hallo,
Zitat: |
muss ich die Exceltabelle dann als struct einlesen um mit dem .() Operator zu suchen? |
Ich weiß nicht, was du hier genau mit "suchen" meinst, aber der . Operator funktioniert wie im Link zu sehen auch mit Tables.
Zitat: |
Und nochmal eine Frage zur Objektorientierten Programmierung... diese wird von meinem Betreuer/Professor gefordert weil meine eingelesene Exceldatei erweitert werden soll und somit dynamisch wächst. |
In welcher Hinsicht "erweitert"? Ich sehe da weiter keinen Bedarf für OOP.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
stempf |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 18
|
|
|
|
Anmeldedatum: 19.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2017a
|
|
|
|
|
|
Verfasst am: 21.12.2020, 16:41
Titel:
|
|
Zu dem Thema suchen in der Liste:
Ich will über die Eingabemaske z.B. eingeben:
Elektrische Leistung PV Anlage 6000W. Dann soll in der Spalte Elektrische Leistung alle Zellen >6000W gefunden werden. Zudem sollen die zugehörigen Zeilen nach links und nach rechts auch ausgeben werden bzw. zwischengespeichert werden.
Zu OOP:
Es kann sein das ich in meiner Exceldatei Spalten hinzufüge oder neue Produkte anlege. Dadurch ändert sich meine Form der Exceldatei. Daher wurde mir geraten mit OOP zu arbeiten damit leichter Änderungen vorgenommen werden können.
Ich hoffe das hilft weiter...
Sry dafür das ich noch nicht so wirklich einen plan habe wie ich das alles realisieren soll
Grüße
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 21.12.2020, 20:06
Titel:
|
|
Hallo,
Zitat: |
Ich will über die Eingabemaske z.B. eingeben:
Elektrische Leistung PV Anlage 6000W. Dann soll in der Spalte Elektrische Leistung alle Zellen >6000W gefunden werden. Zudem sollen die zugehörigen Zeilen nach links und nach rechts auch ausgeben werden bzw. zwischengespeichert werden. |
So etwas sollte mit Table + logischer Indizierung möglich sein. Hast du dir das anhand des Beispiels mal angesehen?
Zitat: |
Es kann sein das ich in meiner Exceldatei Spalten hinzufüge oder neue Produkte anlege. Dadurch ändert sich meine Form der Exceldatei. |
Darin sehe ich kein Problem.
Zitat: |
Daher wurde mir geraten mit OOP zu arbeiten damit leichter Änderungen vorgenommen werden können. |
Erscheint mir hier ein ziemlicher Overkill.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|