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

xlsread und xlswrite

 

Bensen83
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 91
Anmeldedatum: 09.11.07
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.09.2008, 21:26     Titel: xlsread und xlswrite
  Antworten mit Zitat      
Hi Leute, kann mir jemand mal genau die oben genannten Befehle erklären, komme mit der Hilfe nicht zurecht und das was ich hier gefunden habe funktioniert einfach nicht, aber denke diese Befehle sind am besten geeignet um etwas auszulesen und zu speicher. mann muss ja nicht immer excel öffnen usw. also, wer kann mir halfen?

Danke schon mal
Private Nachricht senden Benutzer-Profile anzeigen


nschlange
Ehrenmitglied

Ehrenmitglied



Beiträge: 1.320
Anmeldedatum: 06.09.07
Wohnort: NRW
Version: R2007b
     Beitrag Verfasst am: 20.09.2008, 21:41     Titel:
  Antworten mit Zitat      
Hi,

was funktioniert denn einfach nicht?
In der Hilfe zu den Befehlen sind auch Beispiele, die funktionieren sicherlich.
Hier mal, wie man in ein bestimmtes Tabellenblatt in einen bestimmten Zellenbereich schreiben kann:
Code:
clear all;
clc;

dateiname='Test';
daten=rand(5); % 25 Zufallszahlen, 5 breit, 5 lang
sheet='Tabelle1';
bereich='G3:K7'; % 5 breit, 5 lang
xlswrite(dateiname,daten,sheet,bereich)

_________________

Viele Grüße
nschlange

"Chuck Norris ejakuliert fluessigen Stahl!"
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Bensen83
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 91
Anmeldedatum: 09.11.07
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.09.2008, 21:46     Titel: Funktioniert nicht
  Antworten mit Zitat      
Also wenn ich deinen code eingebe bekomme ich folgende Fehlermeldung:

Error in ==> C:\MATLAB6p5\work\test2.m
On line 6 ==> xlswrite(dateiname,daten,sheet,bereich)

und wenn ich nur eine Zelle beschreiben will gebe ich dann anstatt des Bereiche sinefach z.B. B6 ein?
Private Nachricht senden Benutzer-Profile anzeigen
 
nschlange
Ehrenmitglied

Ehrenmitglied



Beiträge: 1.320
Anmeldedatum: 06.09.07
Wohnort: NRW
Version: R2007b
     Beitrag Verfasst am: 20.09.2008, 21:55     Titel:
  Antworten mit Zitat      
Hi,

offenbar nutzt Du Matlab R13 (6.5). Wie ich gerade ergooglen konnte gibt es in dieser Version wohl kein xlsread/xlswrite.
Um solche Missverständnisse zu vermeiden kann man seine Matlab-Version in das Nutzer-Profil im Forum eintragen. *zaunpfahlschwenk
Es wird Dir wohl nur der Weg über actxserver bleiben oder eine neuere Matlab-Version zu nutzen.
Evtl. gibt es aber auch ein Programm im File Exchange, das Dir Excel-Im-/Export ermöglicht.
_________________

Viele Grüße
nschlange

"Chuck Norris ejakuliert fluessigen Stahl!"
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Bensen83
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 91
Anmeldedatum: 09.11.07
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.09.2008, 22:15     Titel: Einzellne Zelle
  Antworten mit Zitat      
Und wie schreibe oder lese ich nun nur eine einzellne Zelle?
Private Nachricht senden Benutzer-Profile anzeigen
 
Bensen83
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 91
Anmeldedatum: 09.11.07
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.09.2008, 22:18     Titel: alter werte werden gelöscht
  Antworten mit Zitat      
Wenn ich mein Matlab programm erneut starte, dann wird nach dem öffnen von excell ja erst mal alles gelöscht, also alle Zellen sind leer, warum? geht das nicht anders?
Private Nachricht senden Benutzer-Profile anzeigen
 
nschlange
Ehrenmitglied

Ehrenmitglied



Beiträge: 1.320
Anmeldedatum: 06.09.07
Wohnort: NRW
Version: R2007b
     Beitrag Verfasst am: 20.09.2008, 22:31     Titel: Re: Einzellne Zelle
  Antworten mit Zitat      
Bensen83 hat Folgendes geschrieben:
Und wie schreibe oder lese ich nun nur eine einzellne Zelle?


So:
Code:
clear all;
clc;

exl=actxserver('Excel.Application');
exl.visible=1;
workbooks=exl.Workbooks;
workbook=workbooks.Add;
sheets=exl.ActiveWorkbook.Sheets;
sheet1=get(sheets,'Item',1);
invoke(sheet1,'Activate');
activesheet=exl.Activesheet;

B2 = activesheet.get('Range', 'B2');
B3 = activesheet.get('Range', 'B3');
B2.Value = rand; % Wert in Excel schreiben
B3.Value = 'Hallo';

B2B3=activesheet.get('Range','B2:B3');
B2B3=B2B3.Value; % Wert aus Excel holen

workbook.SaveAs('Test')
invoke(exl,'Quit');
delete(exl);


Bensen83 hat Folgendes geschrieben:
Wenn ich mein Matlab programm erneut starte, dann wird nach dem öffnen von excell ja erst mal alles gelöscht, also alle Zellen sind leer, warum? geht das nicht anders?


Welches Programm?

PS: Denk mal bitte daran, Deine Matlab-Version im Profil einzutragen.
_________________

Viele Grüße
nschlange

"Chuck Norris ejakuliert fluessigen Stahl!"
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Bensen83
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 91
Anmeldedatum: 09.11.07
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.09.2008, 23:13     Titel: ok
  Antworten mit Zitat      
Ja so habe ich es auch, aber wenn ich das Programm nun laufen lass und mal andere Zellen einsetze, dann öffnet der immer eine neue leere exceldatei. kann er nicht einfach die alte öffnen?
Private Nachricht senden Benutzer-Profile anzeigen
 
nschlange
Ehrenmitglied

Ehrenmitglied



Beiträge: 1.320
Anmeldedatum: 06.09.07
Wohnort: NRW
Version: R2007b
     Beitrag Verfasst am: 21.09.2008, 07:45     Titel:
  Antworten mit Zitat      
Ja, man kann auch eine Datei öffnen, satt einen neue anzulegen.
workbooks.Open statt workbooks.Add:
Code:
clear all;
clc;

exl=actxserver('Excel.Application');
exl.visible=1;
workbooks=exl.Workbooks;
workbook=workbooks.Open('Test');
sheets=exl.ActiveWorkbook.Sheets;
sheet1=get(sheets,'Item',1);
invoke(sheet1,'Activate');
activesheet=exl.Activesheet;
B2B3=activesheet.get('Range','B2:B3');
B2B3=B2B3.Value; % Wert aus Excel holen
invoke(exl,'Quit');
delete(exl);

_________________

Viele Grüße
nschlange

"Chuck Norris ejakuliert fluessigen Stahl!"
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Bensen83
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 91
Anmeldedatum: 09.11.07
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.10.2008, 15:49     Titel: Fehler beim Abspeichern
  Antworten mit Zitat      
Hallo bekomme immer folgenden Fehler geschrieben. was könnte das sein?

???Invoke Error, Dispatch Exception:
Source: Microsoft Office Excel
Description: Zugriff auf 'Test.xls' verweigert.
Help File: C:\Programme\Microsoft Office\OFFICE11\1031\xlmain11.chm
Help Context ID: 0.

Error in ==> C:\MATLAB6p5\work\Exceltest.m
On line 18 ==> workbook.SaveAs('C:\Test')
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.05.2017, 22:35     Titel:
  Antworten mit Zitat      
Also ich bekomme ständig genau den selben Fehler wie Bensen83, wenn ich den xlswrite-Befehl ausführen will. Ich lese zuerst von einer Excel-Datei mehrere Zahlenwerte ein, berechne über Formeln neue Werte und würde diese neuen Werte gerne in dieselbe Excel-Datei nur in anderen Zellen einfügen.

z.B.
Code:
%

[num, txt, raw]=xlsread('Test.xlsx', 1, 'A5:A7')

Wert1=num(1);
Wert2=num(2);

Wert3=Wert1*Wert2;
Wert4=Wert1+Wert2;

Vektor={Wert3; Wert4}

xlswrite('Test.xlsx', Vektor, 1, H1:H2)
 


Wo liegt denn hier mein Fehler ?
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.05.2017, 22:36     Titel:
  Antworten mit Zitat      
Ich habe die Version R2016a
 
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.