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

Funktion und xlswirte

 

ECO
Forum-Anfänger

Forum-Anfänger


Beiträge: 37
Anmeldedatum: 07.07.13
Wohnort: Berlin
Version: R2014b (Mac)
     Beitrag Verfasst am: 07.07.2013, 21:01     Titel: Funktion und xlswirte
  Antworten mit Zitat      
Hi Leute

bin neu in dem Forum und habe auch direkt meine erste Frage an euch.
Da ich ein ziemlicher Frischling bin für MATLAB, habe ich mit dem folgenden
beiden Codes ein Problem und weiss nicht wo dieser liegt

Funktion:
Code:

function[y,x] = erstefunktion(in,abstand)

if nargin==0
   error('Not enough input arguments.')
elseif nargin < 2
   abstand = 5;
end

x = 0:abstand:in;
y = sind(x);

if nargout == 0
   figure(1)
   clf
   grid
   plot(x,y)
   xlabel('Winkel in Grad')
   ylabel('Sinus')
   title('Erstfunktion')
   clear x y
end

end
 


Die Funktion läuft nicht so wie ich es haben will, jedoch weiss ich nicht warum. Ich lass es laufen und beim ersten nargin gib es einen Fehler aus
egal ob Argumente übergeben wurden oder nicht. Vielleicht ist das auch mein Fehler ich bin mir nicht sicher ob ich die Argumente korrekt übergebe.


xlswrite:
Code:

>> M = [1 2 3; 4 5 6; 7 8 9];
>> M

M =

     1     2     3
     4     5     6
     7     8     9

>> xlswrite('MDateixls',M)
Warning: Could not start Excel server
for export.
XLSWRITE will attempt to write file in
CSV format.
> In xlswrite at 175
>>
 


Bei xlswrite bin ich mir nicht sicher ob ich diese Funktion noch in die Libary aufnehmen muss. Nebenbei muss ich noch sagen das ich Matlab auf einem Macbook ausführe und deshalb vielleicht nicht funktioniert. Jedoch muss es doch irgendwie gehen das ich eine excel Datei erzeugen mit werten die ich übergebe oder ???
Private Nachricht senden Benutzer-Profile anzeigen


Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 07.07.2013, 21:29     Titel:
  Antworten mit Zitat      
die antwort auf deine zweite frage steht in der doc zu xlswrite
Zitat:
If your system does not have Excel for Windows, or if the COM server (part of the typical installation of Excel) is unavailable, then the xlswrite function:

Writes array A to a text file in comma-separated value (CSV) format.

Ignores the sheet and xlRange arguments.

Generates an error when input array A is a cell array.
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 07.07.2013, 21:34     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Ich lass es laufen und beim ersten nargin gib es einen Fehler aus
egal ob Argumente übergeben wurden oder nicht.

Und welche Fehlermeldung bekommst du?

Zitat:

Nebenbei muss ich noch sagen das ich Matlab auf einem Macbook ausführe und deshalb vielleicht nicht funktioniert. Jedoch muss es doch irgendwie gehen das ich eine excel Datei erzeugen mit werten die ich übergebe oder ???

Siehe hierzu die Doku von xlswrite:
Zitat:
If your system does not have Excel for Windows installed, or if the COM server is unavailable, xlswrite:

* Writes matrix M as a text file in comma-separated value (CSV) format.
* Ignores the sheet and range arguments.
* Generates an error if the input matrix M is a cell array.


Du kannst aber beispielsweise auf File Exchange nach Alternativen suchen. Dort findet sich z.B. das:
http://www.mathworks.de/matlabcentr.....hout-excel-on-maclinuxwin

Grüße,
Harald

P.S.: wenn du zwei Fragen hast, die nichts miteinander zu tun haben, ist es geschickter, zwei Themen aufzumachen.
Private Nachricht senden Benutzer-Profile anzeigen
 
ECO
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 37
Anmeldedatum: 07.07.13
Wohnort: Berlin
Version: R2014b (Mac)
     Beitrag Verfasst am: 07.07.2013, 23:13     Titel:
  Antworten mit Zitat      
Erstmal Danke für die schnellen Antworten.

Dann die Fehlermeldung bei der Funktion ist :

Code:


>> erstefunktion
Error using erstefunktion (line 4)
Not enough input arguments.

 


und für xlswrite

Soviel ich verstehe liegt es daran, dass es nicht funktioniert, wenn Excel oder dieser Com Server fehlen. Komisch dennoch ich habe Excel drauf. Naja sei es drum ich versuche diese Exchange Variante mal sehen.

Grüße
Eco

PS: Ich wollte nicht gleich das Forum mit Themen zu bomben und vielleicht sogar damit einige wütend machen. Wird bei anderen Foren nicht gern gesehen.
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 07.07.2013, 23:17     Titel:
  Antworten mit Zitat      
Hallo,

die Fehlermeldung ist doch die, die du selbst erzeugst.

Zitat:
Komisch dennoch ich habe Excel drauf.

Jo, aber auf einem Macbook doch kaum Excel for Windows?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
ECO
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 37
Anmeldedatum: 07.07.13
Wohnort: Berlin
Version: R2014b (Mac)
     Beitrag Verfasst am: 07.07.2013, 23:45     Titel:
  Antworten mit Zitat      
Hi,

ich weiss das es die ist, aber sie kommt auch wenn ich Werte übergebe.
Oder ich mache halt einen Fehler bei der Übergabe von Werten.


Und bei einem Mac sollte es eher heißen Excel for Mac. Finde ich irgendwie blöd.

Gruß

Eco
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 08.07.2013, 08:46     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Oder ich mache halt einen Fehler bei der Übergabe von Werten.

Wie übergibst du die Werte denn?

Zitat:
Und bei einem Mac sollte es eher heißen Excel for Mac.

Schon klar. Ich habe das auch zitiert, weil somit eben klar wird, dass Excel auf Mac nicht unterstützt wird. Man braucht ja aber nur zu googeln und findet einen schönen Lösungsvorschlag.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
ECO
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 37
Anmeldedatum: 07.07.13
Wohnort: Berlin
Version: R2014b (Mac)
     Beitrag Verfasst am: 08.07.2013, 13:32     Titel:
  Antworten mit Zitat      
Hi,

ich übergebe den Variablen in und abstand einen Wert im Kommandofenster
und dann rufe ich die Funktion erstefunktion über den Namen auf.

Gruß
ECO
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 08.07.2013, 13:43     Titel:
  Antworten mit Zitat      
Hallo,

bitte nicht umschreiben, sondern tatsächlichen Beispielcode posten.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
ECO
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 37
Anmeldedatum: 07.07.13
Wohnort: Berlin
Version: R2014b (Mac)
     Beitrag Verfasst am: 08.07.2013, 14:06     Titel:
  Antworten mit Zitat      
Hi,

ich glaub ein Bild zeigt es am Besten

Bildschirmfoto 2013-07-08 um 14.05.26.png
 Beschreibung:

Download
 Dateiname:  Bildschirmfoto 2013-07-08 um 14.05.26.png
 Dateigröße:  288.98 KB
 Heruntergeladen:  492 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 08.07.2013, 14:16     Titel:
  Antworten mit Zitat      
Hallo,

du musst die Argumente explizit übergeben:
Code:
erstefunktion(in, abstand)


Hintergrund: im übergeordneten Programm könnten die Variablen auch anders heißen, z.B.
Code:
a = 120;
b = 10;
erstefunktion(a, b)


Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
ECO
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 37
Anmeldedatum: 07.07.13
Wohnort: Berlin
Version: R2014b (Mac)
     Beitrag Verfasst am: 08.07.2013, 17:08     Titel:
  Antworten mit Zitat      
Hi,

o mein Gott was für ein dämlicher Fehler meinerseits.

DANKE Harald

Gruß
Eco
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.