WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Daten aus versch. Excelsheets einer xls-Datei vergleichen

 

Thea
Forum-Anfänger

Forum-Anfänger


Beiträge: 10
Anmeldedatum: 16.10.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2014, 15:55     Titel: Daten aus versch. Excelsheets einer xls-Datei vergleichen
  Antworten mit Zitat      
Hallo.

Ich habe ein verschiedene Daten in einer Exceldatei mit 100 sheets abgespeichert.

Jetzt um die Daten weiterzuverarbeiten muss ich zum Beispiel den größten Wert des Eintrages K2 aller sheets finden.

Ich würde versuchen alle diese Einträge in eine Spalte zu schreiben und dann entweder mit einem Befehl, wenn es ihn gibt, den größten Wert suchen oder die Einträge der Größe nach ordnen lassen.

Vielleicht gibt es aber gleich einen passenden Befehl dazu?

Ich muss nämlich noch nachvollziehen können von welchem sheet dieser Wert stammt...

Kann Matlab mir dann auch ausgeben auf welchem sheet der größte Wert gefunden wurde?

Ich würde so anfangen, befürchte aber, dass es da elegantere Lösugnen gibt und frage mich wie ich am besten weitermachen sollte:
Code:
k=1:4
P=xlsread('tabelle.xls',['Tabelle' num2str(k)],'K2')
end
 

Ich schaffe es nicht diese Werte in eine Spalte zu schreiben. P wird jedesmal überschrieben..

Vielen Dank Euch!!
LG
Private Nachricht senden Benutzer-Profile anzeigen


Phate
Forum-Guru

Forum-Guru



Beiträge: 283
Anmeldedatum: 09.11.09
Wohnort: Stuttgart
Version: R2008b
     Beitrag Verfasst am: 18.02.2014, 17:11     Titel:
  Antworten mit Zitat      
Hi,

Hast eine Kleinigkeit übersehen:
Code:

P = zeros(1,4) %preallocation
for k=1:4
P(k) = xlsread('tabelle.xls',['Tabelle' num2str(k)],'K2')
end
 


P muss auch mit k indiziert werden sonst überschreibst du jedes mal deinen Wert. Die preallocation der Größe P macht den Code nur schneller da schon Speicherplatz für die Größe belegt wird, muss nicht zwingend in Matlab gemacht werden ist aber besser.

Nebenbei, wenn du die Daten nicht zwingend in Matlab brauchst ist die Aufgabe sicher auch einfach in Excel lösbar, auch ohne VBA Kentnisse.

Grüße
Private Nachricht senden Benutzer-Profile anzeigen
 
Thea
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 10
Anmeldedatum: 16.10.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.02.2014, 16:45     Titel:
  Antworten mit Zitat      
Hallo!
Super, danke, das funktioniert!

Jetzt versuche ich P in eine Spalte in ein neues Dokument zu schreiben, aber ich bekomme immer nur eine sehr lange Zeile mit vielen Einträgen, anstatt eine lange Spalte..

Was stimmt hierbei denn nicht?
Code:
P = zeros(10,1); %preallocation
for k=1:10
   P(k) = xlsread('tab5.xls',['Tabelle' num2str(k)],'B12');
end
xlswrite('tab_P.xls', P, 'Tabelle','A2');


Danke und viele Grüße!!

edit by denny: Bitte die Codefragmentierung verwenden. Danke!
comment by jan: Es ist wohl die "Code-Umgebung" gemeint. :-)
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.