Figure を ActiveX を使って Excel Workbook に挿入するにはどうすればよいですか?
25 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
MATLAB ファイルから直接ワークブックに MATLAB のフィギュアを貼り付ける方法を教えてください。
Réponse acceptée
MathWorks Support Team
le 13 Juil 2012
MATLAB の Figure は、ActiveX を使って Excel に貼り付けることができます。ここでは、例題を使って 2 通りの方法で説明します。
% figure からイメージを作成
img = 'figure1.png';
plot(1:10);
print('-dpng', img);
% Excel COM Server のハンドルを取得
Excel = actxserver('Excel.Application');
% 上記を visible に設定
set(Excel,'Visible',1);
% Workbook を追加
Workbooks = Excel.Workbooks;
Workbook = invoke(Workbooks, 'Add');
% Sheet のハンドルを取得し、Sheet を選択
Sheets = Excel.ActiveWorkBook.Sheets;
Sheet1 = get(Sheets, 'Item', 1);
Sheet1.Activate;
% 方法1 ここから
% Sheet 1 の Shapes のハンドルを取得
Shapes = Sheet1.Shapes;
% イメージを追加
Shapes.AddPicture([pwd '\' img] ,0,1,400,18,300,235);
% 方法1 ここまで
% 方法2 ここから
% イメージを追加
Sheet1.invoke('Pictures').Insert([pwd '\' img]);
% 方法2 ここまで
% workbook を保存し、Excelをクローズ
invoke(Workbook, 'SaveAs', [pwd '\myfile.xls']);
invoke(Excel, 'Quit');
上記のコード(方法1)では、Excel の Shapes.AddPicture メソッドを使って Excel シートに figure を挿入しています。 AddPicture シンタックスは、
expression.AddPicture(Filename, LinkToFile, SaveWithDocument, Left, Top, Width, Height)
となります。ここで、expression は Shapes オブジェクトを表す変数です。
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur MATLAB の COM オブジェクト dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!