|
|
Exceltabelle mit mehreren Datensaetzen in 1 Spalte auslesen |
|
Matth1as |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.07.2015, 11:48
Titel: Exceltabelle mit mehreren Datensaetzen in 1 Spalte auslesen
|
 |
Hallo,
das Problem ist, dass ich mehrere Messergebnisse aus einer Exceltabelle auslesen moechte. Allerdings befinden sich die Daten in der gleichen Spalte.
z.B. C2-C101, C103-C202, usw.....
Auslesen wollte ich mit xlsread. Da ich mehrere Messreihen habe aendert sich die Anzahl der Datensaetze. Also suche ich eine Moeglichkeit diese Daten auszulesen, ohne die Start-(z.B. C2) & Endzeile (z.B. C101) festzulegen (fuer den Fall, das sich die Datensatzlaenge aendert).
Zwischen den einzelnen Datensaetzen ist nur eine Leerzeile.
LG
Matthias
|
|
|
|
|
Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 02.07.2015, 11:50
Titel:
|
 |
Zitat: |
das Problem ist, dass ich mehrere Messergebnisse aus einer Exceltabelle auslesen moechte. |
das hört sich nicht sehr problematisch an.
was hast du denn versucht? welche fehler sind aufgetreten`? beispielcode und beispiel daten bitte. am besten du guckst dir mal den thread aus meiner signatur an.
grüße
_________________
richtig Fragen
|
|
|
Matth1as |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.07.2015, 12:03
Titel:
|
 |
Hier Teile meines bisherigern Codes
So muss ich aber jedes mal den Code anpassen, wenn sich etwas an den Messergebnissen veraendert. Sei es die Anzahl der Messungen oder Messergebnisse.
Ich wuerde das gerne dynamisch machen, sodass ich den Code fuer alle meine Ergebnisse anwenden kann. Sprich das die Tabelle vom Anfang bis zur ersten Leerzeile eingelesen wird und dann den naechsten Datensatz bis zur naechsten Leerzeile, bis zum Ende der Tabelle (es sind nicht immer gleich viele Datensaetze).
LG
Matthias
|
|
|
Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 02.07.2015, 12:14
Titel:
|
 |
hab grade keine excel installiert aber erstmal überschreibst du immer wieder deine daten... du kannst dur also die hälfte deiner dinger da spaaren. außerdem war mir so das leere felder nan enthalten. die kannst du also suchen. falls nicht soltle aber etwas in den raw rückgabe argumenten von xlsread auftauchen.
außerdem ist mir aufgefallen das du einen index im namen versteckst. sowas ist sehr schlecht und sollte unbedingt vermieden werden.
_________________
richtig Fragen
|
|
|
Matth1as |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 07.07.2015, 12:28
Titel:
|
 |
ich habe jetzt nochmal etwas ausprobiert, komme aber immer noch nicht weiter
das klappt allerdings nicht.
Mein Plan war es jede Zelle einzeln auszulesen und wenn man auf eine Leerzeile trifft, den naechsten Datensatz in eine neue Zeile oder Spalte der Matrix "daten" zu speichern. Und das bei 2 aufeinander folgenden Leerzeilen das einlesen beendet wird.
Nur leider bin ich mit Matlab noch zu unerfahren um den Code dafuer richtig hinzu bekommen.
Wuerde mich ueber Hilfe freuen.
LG
Matthais
|
|
|
Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 07.07.2015, 12:43
Titel:
|
 |
nan ist kein string sondern der wert nan
dafür gibt es den befehl
isnan
ohne beispieldaten und code der den fehler reproduziert muss man einfach zu viel raten. ich könnte selber irgendwelche beispieldaten generieren und damit dann arbeiten aber das ist eignedlich deine aufgabe.
_________________
richtig Fragen
|
|
|
Matth1as |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 07.07.2015, 13:09
Titel:
|
 |
ok im Anhang findest du meine Testtabelle.
ich habe jetzt den strcmp befehl durch den isnan befehl ausgetauscht.
Ich bekomme folgende Fehlermeldung:
Error using xlsread (line 247)
Data range 'A123456789:;<=>?@A1' is invalid.
Error in test2 (line 6)
daten{j:k} = xlsread('testtabelle','Tabelle1',['A' num2str(k): 'A' num2str(k)]);
LG
Matthias
Beschreibung: |
|
 Download |
Dateiname: |
testtabelle.xls |
Dateigröße: |
17.5 KB |
Heruntergeladen: |
342 mal |
|
|
|
Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 07.07.2015, 13:19
Titel:
|
 |
so würde ich das machen denke ich.
grüße
_________________
richtig Fragen
|
|
|
Matth1as |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 07.07.2015, 14:09
Titel:
|
 |
danke das klappt soweit.
nur wenn ich den Code ausfuehre und danach daten aufrufe erhalte ich:
>> daten
daten =
[5x1 double] [5x1 double] [5x1 double]
Wenn ich jetzt die Datenbloecke in irgendeiner Art und Weise plotten moechte,
kann ich dann wie auf die Daten zugreifen? Mit dem Befehl
>> daten(1)
ans =
[5x1 double]
bekomme ich nur das Ergebniss
LG
Matthias
|
|
|
Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 07.07.2015, 14:16
Titel:
|
 |
|
|
|
|
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 - 2025
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.
|
|