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

makros mit m.file starten?

 

snowtim
Forum-Anfänger

Forum-Anfänger


Beiträge: 49
Anmeldedatum: 31.03.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.04.2008, 09:25     Titel: makros mit m.file starten?
  Antworten mit Zitat      
hi
kann ich von matlab aus im m.file makros in excel ausführen?
wenn ja wie starte ich sie?
und wie schließe ich sie?
Private Nachricht senden Benutzer-Profile anzeigen


unusual
Forum-Anfänger

Forum-Anfänger


Beiträge: 21
Anmeldedatum: 27.03.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.04.2008, 10:06     Titel:
  Antworten mit Zitat      
Hey snowtim,

verwende folgenden Code zum Öffnen der Excel-Arbeitsmappe:

Code:

excel = actxserver('Excel.Application')

excel.Visible = 1

excel.Workbooks.Open('d:\Ordner\Datei')

Damit sollte die gewünschte Arbeitsmappe aufgehen.

Mit Öffnen einer Excel-Arbeitsmappe kannst Du ein Makro automatisch ausführen lassen.

Verwende folgendes:

sub Auto_Open()

VBA-Code

end sub

oder schau in der VBA Hilfe nach Workbooks.Open


Gruß

Timo
Private Nachricht senden Benutzer-Profile anzeigen
 
snowtim
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 49
Anmeldedatum: 31.03.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.04.2008, 10:48     Titel:
  Antworten mit Zitat      
erstml danke,
hat mir auch weiter geholfen.
war einfach wirklich nur

sub auto_open()

call main

end sub

soweit geht es auch, wenn ich excel selber öffne startet alles.
nur über den m.file nicht. habe hier einen kurzen geschrieben der erst öffen soll und dann einfach einen wert hochzählen soll damit ich sehe das sich was tut.
-Makros sind auf aktiv geschaltet
-excel öffnet sich
- zählt den wert hoch

aber das makro geht nicht los.


% ActiveX Verbindung zu Excel aufbauen:
excel = actxserver('Excel.Application');
%
% Excel sichtbar machen (sonst kann es auch im Hintergrund laufen)
excel.Visible = 1;
%
% Dokument öffnen
excel.Workbooks.Open(fname);
%
x = 'Generatormodel';
% passendes Sheet activieren "Item(x)"
excel.ActiveWorkBook.Sheets.Item(x).Activate;
%



% Daten aus bestimmten Bereich auslesen
Messwert = xlsread(fname, x,'Messwert')
V=Messwert*10

while i<10
i=i+1



%um eine änderung zu sehen
V=V+10

% neue Daten übergeben
excel.ActiveSheet.Range('F6').Value = V
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 - 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.